From 98333e362d547c9a8f5044f0ef9c58d5ea17f04a Mon Sep 17 00:00:00 2001 From: Florian Schmaus Date: Sun, 11 May 2014 10:18:49 +0200 Subject: [PATCH] Add 'null' check to parseContentDepth Does not fix the actual problem, but at least prevents resource allocation until OOM. --- .../java/org/jivesoftware/smack/util/PacketParserUtils.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/smack-core/src/main/java/org/jivesoftware/smack/util/PacketParserUtils.java b/smack-core/src/main/java/org/jivesoftware/smack/util/PacketParserUtils.java index 8adfd8164..aec0a2dbe 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/util/PacketParserUtils.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/util/PacketParserUtils.java @@ -156,7 +156,11 @@ public class PacketParserUtils { public static String parseContentDepth(XmlPullParser parser, int depth) throws XmlPullParserException, IOException { StringBuilder content = new StringBuilder(); while (!(parser.next() == XmlPullParser.END_TAG && parser.getDepth() == depth)) { - content.append(parser.getText()); + String text = parser.getText(); + if (text == null) { + throw new IllegalStateException("Parser should never return 'null' on getText() here"); + } + content.append(text); } return content.toString(); }