diff options
author | kwaclaw <kwaclaw> | 2005-11-24 14:15:22 +0000 |
---|---|---|
committer | kwaclaw <kwaclaw> | 2005-11-24 14:15:22 +0000 |
commit | 9f9579436867b6426bf065fb5c34ece217e3c73e (patch) | |
tree | 057825f306cd713ad911f25eefbec4ddcf8aeb01 /lib/xmlparse.c | |
parent | 122396eb463e9cc4886f8848648b15c5405ce01c (diff) | |
download | libexpat-9f9579436867b6426bf065fb5c34ece217e3c73e.tar.gz |
Fix for bug # 1271642.
Diffstat (limited to 'lib/xmlparse.c')
-rw-r--r-- | lib/xmlparse.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/lib/xmlparse.c b/lib/xmlparse.c index 99659b4..bfbba1e 100644 --- a/lib/xmlparse.c +++ b/lib/xmlparse.c @@ -4879,9 +4879,8 @@ appendAttributeValue(XML_Parser parser, const ENCODING *enc, XML_Bool isCdata, return XML_ERROR_NO_MEMORY; entity = (ENTITY *)lookup(&dtd->generalEntities, name, 0); poolDiscard(&temp2Pool); - /* first, determine if a check for an existing declaration is needed; - if yes, check that the entity exists, and that it is internal, - otherwise call the default handler (if called from content) + /* First, determine if a check for an existing declaration is needed; + if yes, check that the entity exists, and that it is internal. */ if (pool == &dtd->pool) /* are we called from prolog? */ checkEntityDecl = @@ -4900,13 +4899,16 @@ appendAttributeValue(XML_Parser parser, const ENCODING *enc, XML_Bool isCdata, return XML_ERROR_ENTITY_DECLARED_IN_PE; } else if (!entity) { - /* cannot report skipped entity here - see comments on - skippedEntityHandler + /* Cannot report skipped entity here - see comments on + skippedEntityHandler. if (skippedEntityHandler) skippedEntityHandler(handlerArg, name, 0); */ + /* Cannot call the default handler because this would be + out of sync with the call to the startElementHandler. if ((pool == &tempPool) && defaultHandler) reportDefault(parser, enc, ptr, next); + */ break; } if (entity->open) { |