Applied patch for bug # 620106.
diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c
index b834d1a..0dcf61d 100644
--- a/expat/lib/xmlparse.c
+++ b/expat/lib/xmlparse.c
@@ -617,7 +617,16 @@
#define paramEntityParsing (parser->m_paramEntityParsing)
#endif /* XML_DTD */
-#define parsing (processor != prologInitProcessor)
+#define parsing \
+ (parentParser \
+ ? \
+ (isParamEntity \
+ ? \
+ (processor != externalParEntInitProcessor) \
+ : \
+ (processor != externalEntityInitProcessor)) \
+ : \
+ (processor != prologInitProcessor))
XML_Parser
XML_ParserCreate(const XML_Char *encodingName)