diff --git a/guacamole-ext/src/main/java/org/glyptodon/guacamole/xml/DocumentHandler.java b/guacamole-ext/src/main/java/org/glyptodon/guacamole/xml/DocumentHandler.java index 7f16a9916..bc77ad412 100644 --- a/guacamole-ext/src/main/java/org/glyptodon/guacamole/xml/DocumentHandler.java +++ b/guacamole-ext/src/main/java/org/glyptodon/guacamole/xml/DocumentHandler.java @@ -140,8 +140,13 @@ public class DocumentHandler extends DefaultHandler { public void characters(char[] ch, int start, int length) throws SAXException { + // Get current state + DocumentHandlerState current = getCurrentState(); + if (current == null) + throw new SAXException("Character data not allowed outside XML document."); + // Append received chunk to text content - getCurrentState().getTextContent().append(ch, start, length); + current.getTextContent().append(ch, start, length); }