GNOME Bugzilla – Bug 556780
xmllint Segfaults on DTD
Last modified: 2021-07-05 13:24:40 UTC
Please describe the problem: Running xmllint with no arguments yields a segmentation fault on XML files which contain a DTD. I've tried several different XML files including ones in the source tarball but xmllint segfaults on every one. Steps to reproduce: 1. Create a file containing the following XML data, pulled from W3's XML specification: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE greeting [ <!ELEMENT greeting (#PCDATA)> ]> <greeting>Hello, world!</greeting> 2. Execute 'xmllint <XML file>' Actual results: "Segmentation Fault" is displayed. Expected results: Expect to see the contents of the XML file. Does this happen every time? Yes Other information: Result of 'uname -a': UnixWare dev6 5 7.1.4 i386 x86at SCO UNIX_SVR5 Result of 'xmllint -version': xmllint: using libxml version 20702 compiled with: Tree Output Push Reader Patterns Writer SAXv1 FTP HTTP DTDValid HTML Legacy C14N Catalog XPath XPointer XInclude Iconv ISO8859X Unicode Regexps Automata Expr Schemas Schematron Modules Debug Zlib
That completely specific to the build on your platform, works fine wei:~/XML -> cat tst.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE greeting [ <!ELEMENT greeting (#PCDATA)> ]> <greeting>Hello, world!</greeting> wei:~/XML -> xmllint tst.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE greeting [ <!ELEMENT greeting (#PCDATA)> ]> <greeting>Hello, world!</greeting> wei:~/XML -> valgrind xmllint tst.xml ==13906== Memcheck, a memory error detector. ==13906== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al. ==13906== Using LibVEX rev 1804, a library for dynamic binary translation. ==13906== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP. ==13906== Using valgrind-3.3.0, a dynamic binary instrumentation framework. ==13906== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al. ==13906== For more details, rerun with: -v ==13906== <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE greeting [ <!ELEMENT greeting (#PCDATA)> ]> <greeting>Hello, world!</greeting> ==13906== ==13906== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 4 from 1) ==13906== malloc/free: in use at exit: 0 bytes in 0 blocks. ==13906== malloc/free: 79 allocs, 79 frees, 66,745 bytes allocated. ==13906== For counts of detected errors, rerun with: -v ==13906== All heap blocks were freed -- no leaks are possible. wei:~/XML -> I don't see any other solution than take a debugger and see where and how it fails on your platform, it's really tied to your build. Daniel
valgrind will not compile on sysv5UnixWare7.1.4 but I can run debug on xmllint. $ debug /usr/local/bin/xmllint test.xml New program xmllint (process p1) created HALTED p1 [main in xmllint.c] 2943: int version = 0; debug> step -c 0 STEPPED p1 [main in xmllint.c] 2946: if (argc <= 1) { STEPPED p1 [main in xmllint.c] 2950: LIBXML_TEST_VERSION STEPPED p1 [xmlCheckVersion in parserInternals.c] 75: if ((myversion / 10000) != (version / 10000)) { STEPPED p1 [xmlCheckVersion in parserInternals.c] 83: if ((myversion / 100) < (version / 100)) { STEPPED p1 [xmlCheckVersion in parserInternals.c] 87: } STEPPED p1 [main in xmllint.c] 2951: for (i = 1; i < argc ; i++) { STEPPED p1 [main in xmllint.c] 2952: if (!strcmp(argv[i], "-")) STEPPED p1 [main in xmllint.c] 2955: if (argv[i][0] != '-') STEPPED p1 [main in xmllint.c] 3265: if (nocatalogs == 0) { STEPPED p1 [main in xmllint.c] 3266: if (catalogs) { STEPPED p1 [main in xmllint.c] 3280: if (sax1) STEPPED p1 [main in xmllint.c] 3283: xmlSAXDefaultVersion(2); STEPPED p1 [xmlSAXDefaultVersion in SAX2.c] 2694: int ret = xmlSAX2DefaultVersionValue; STEPPED p1 [xmlSAXDefaultVersion in SAX2.c] 2696: if ((version != 1) && (version != 2)) STEPPED p1 [xmlSAXDefaultVersion in SAX2.c] 2698: xmlSAX2DefaultVersionValue = version; STEPPED p1 [xmlSAXDefaultVersion in SAX2.c] 2699: return(ret); STEPPED p1 [main in xmllint.c] 3286: if (chkregister) { STEPPED p1 [main in xmllint.c] 3291: indent = getenv("XMLLINT_INDENT"); STEPPED p1 [main in xmllint.c] 3292: if(indent != NULL) { STEPPED p1 [main in xmllint.c] 3297: defaultEntityLoader = xmlGetExternalEntityLoader(); STEPPED p1 [xmlGetExternalEntityLoader in xmlIO.c] 3861: return(xmlCurrentExternalEntityLoader); STEPPED p1 [main in xmllint.c] 3298: xmlSetExternalEntityLoader(xmllintExternalEntityLoader); STEPPED p1 [xmlSetExternalEntityLoader in xmlIO.c] 3849: xmlCurrentExternalEntityLoader = f; STEPPED p1 [main in xmllint.c] 3300: xmlLineNumbersDefault(1); STEPPED p1 [xmlLineNumbersDefault in parserInternals.c] 2013: int old = xmlLineNumbersDefaultValue; STEPPED p1 [xmlLineNumbersDefault in parserInternals.c] 2012: xmlLineNumbersDefault(int val) { STEPPED p1 [xmlLineNumbersDefault in parserInternals.c] 2013: int old = xmlLineNumbersDefaultValue; STEPPED p1 [xmlLineNumbersDefault in parserInternals.c] 2015: xmlLineNumbersDefaultValue = val; STEPPED p1 [xmlLineNumbersDefault in parserInternals.c] 2016: return(old); STEPPED p1 [main in xmllint.c] 3301: if (loaddtd != 0) STEPPED p1 [main in xmllint.c] 3303: if (dtdattrs) STEPPED p1 [main in xmllint.c] 3305: if (noent != 0) xmlSubstituteEntitiesDefault(1); STEPPED p1 [main in xmllint.c] 3307: if (valid != 0) xmlDoValidityCheckingDefaultValue = 1; STEPPED p1 [main in xmllint.c] 3309: if ((htmlout) && (!nowrap)) { STEPPED p1 [main in xmllint.c] 3323: if ((schematron != NULL) && (sax == 0) STEPPED p1 [main in xmllint.c] 3357: if ((relaxng != NULL) && (sax == 0) STEPPED p1 [main in xmllint.c] 3415: if ((pattern != NULL) STEPPED p1 [main in xmllint.c] 3429: for (i = 1; i < argc ; i++) { STEPPED p1 [main in xmllint.c] 3430: if ((!strcmp(argv[i], "-encode")) || STEPPED p1 [main in xmllint.c] 3434: } else if ((!strcmp(argv[i], "-o")) || STEPPED p1 [main in xmllint.c] 3441: if ((!strcmp(argv[i], "-dtdvalid")) || STEPPED p1 [main in xmllint.c] 3446: if ((!strcmp(argv[i], "-path")) || STEPPED p1 [main in xmllint.c] 3451: if ((!strcmp(argv[i], "-dtdvalidfpi")) || STEPPED p1 [main in xmllint.c] 3457: if ((!strcmp(argv[i], "-relaxng")) || STEPPED p1 [main in xmllint.c] 3462: if ((!strcmp(argv[i], "-maxmem")) || STEPPED p1 [main in xmllint.c] 3467: if ((!strcmp(argv[i], "-schema")) || STEPPED p1 [main in xmllint.c] 3472: if ((!strcmp(argv[i], "-schematron")) || STEPPED p1 [main in xmllint.c] 3478: if ((!strcmp(argv[i], "-pattern")) || STEPPED p1 [main in xmllint.c] 3484: if ((timing) && (repeat)) STEPPED p1 [main in xmllint.c] 3487: if ((argv[i][0] != '-') || (strcmp(argv[i], "-") == 0)) { STEPPED p1 [main in xmllint.c] 3488: if (repeat) { STEPPED p1 [main in xmllint.c] 3511: nbregister = 0; STEPPED p1 [main in xmllint.c] 3514: if (stream != 0) STEPPED p1 [main in xmllint.c] 3518: if (sax) { STEPPED p1 [main in xmllint.c] 3521: parseAndPrintFile(argv[i], NULL); STEPPED p1 [parseAndPrintFile in xmllint.c] 2049: xmlDocPtr doc = NULL; STEPPED p1 [parseAndPrintFile in xmllint.c] 2054: if ((timing) && (!repeat)) STEPPED p1 [parseAndPrintFile in xmllint.c] 2059: if (filename == NULL) { STEPPED p1 [parseAndPrintFile in xmllint.c] 2072: else if ((html) && (push)) { STEPPED p1 [parseAndPrintFile in xmllint.c] 2131: if (push) { STEPPED p1 [parseAndPrintFile in xmllint.c] 2171: if (testIO) { STEPPED p1 [parseAndPrintFile in xmllint.c] 2258: if (rectxt != NULL) STEPPED p1 [parseAndPrintFile in xmllint.c] 2262: if (sax1) STEPPED p1 [parseAndPrintFile in xmllint.c] 2266: doc = xmlReadFile(filename, NULL, options); STEPPED p1 [xmlReadFile in parser.c] 14314: ctxt = xmlCreateURLParserCtxt(filename, options); STEPPED p1 [xmlCreateURLParserCtxt in parser.c] 13167: ctxt = xmlNewParserCtxt(); STEPPED p1 [xmlNewParserCtxt in parserInternals.c] 1777: if (ctxt == NULL) { STEPPED p1 [xmlNewParserCtxt in parserInternals.c] 1781: memset(ctxt, 0, sizeof(xmlParserCtxt)); STEPPED p1 [xmlNewParserCtxt in parserInternals.c] 1782: if (xmlInitParserCtxt(ctxt) < 0) { STEPPED p1 [xmlInitParserCtxt in parserInternals.c] 1522: if(ctxt==NULL) { STEPPED p1 [xmlInitParserCtxt in parserInternals.c] 1527: xmlDefaultSAXHandlerInit(); STEPPED p1 [xmlDefaultSAXHandlerInit in SAX2.c] 2789: xmlSAXVersion((xmlSAXHandlerPtr) &xmlDefaultSAXHandler, 1); STEPPED p1 [xmlSAXVersion in SAX2.c] 2715: if (hdlr == NULL) return(-1); STEPPED p1 [xmlSAXVersion in SAX2.c] 2716: if (version == 2) { STEPPED p1 [xmlSAXVersion in SAX2.c] 2725: hdlr->startElement = xmlSAX2StartElement; STEPPED p1 [xmlSAXVersion in SAX2.c] 2726: hdlr->endElement = xmlSAX2EndElement; STEPPED p1 [xmlSAXVersion in SAX2.c] 2727: hdlr->initialized = 1; STEPPED p1 [xmlSAXVersion in SAX2.c] 2731: hdlr->internalSubset = xmlSAX2InternalSubset; STEPPED p1 [xmlSAXVersion in SAX2.c] 2732: hdlr->externalSubset = xmlSAX2ExternalSubset; STEPPED p1 [xmlSAXVersion in SAX2.c] 2733: hdlr->isStandalone = xmlSAX2IsStandalone; STEPPED p1 [xmlSAXVersion in SAX2.c] 2734: hdlr->hasInternalSubset = xmlSAX2HasInternalSubset; STEPPED p1 [xmlSAXVersion in SAX2.c] 2735: hdlr->hasExternalSubset = xmlSAX2HasExternalSubset; STEPPED p1 [xmlSAXVersion in SAX2.c] 2736: hdlr->resolveEntity = xmlSAX2ResolveEntity; STEPPED p1 [xmlSAXVersion in SAX2.c] 2737: hdlr->getEntity = xmlSAX2GetEntity; STEPPED p1 [xmlSAXVersion in SAX2.c] 2738: hdlr->getParameterEntity = xmlSAX2GetParameterEntity; STEPPED p1 [xmlSAXVersion in SAX2.c] 2739: hdlr->entityDecl = xmlSAX2EntityDecl; STEPPED p1 [xmlSAXVersion in SAX2.c] 2740: hdlr->attributeDecl = xmlSAX2AttributeDecl; STEPPED p1 [xmlSAXVersion in SAX2.c] 2741: hdlr->elementDecl = xmlSAX2ElementDecl; STEPPED p1 [xmlSAXVersion in SAX2.c] 2742: hdlr->notationDecl = xmlSAX2NotationDecl; STEPPED p1 [xmlSAXVersion in SAX2.c] 2743: hdlr->unparsedEntityDecl = xmlSAX2UnparsedEntityDecl; STEPPED p1 [xmlSAXVersion in SAX2.c] 2744: hdlr->setDocumentLocator = xmlSAX2SetDocumentLocator; STEPPED p1 [xmlSAXVersion in SAX2.c] 2745: hdlr->startDocument = xmlSAX2StartDocument; STEPPED p1 [xmlSAXVersion in SAX2.c] 2746: hdlr->endDocument = xmlSAX2EndDocument; STEPPED p1 [xmlSAXVersion in SAX2.c] 2747: hdlr->reference = xmlSAX2Reference; STEPPED p1 [xmlSAXVersion in SAX2.c] 2748: hdlr->characters = xmlSAX2Characters; STEPPED p1 [xmlSAXVersion in SAX2.c] 2749: hdlr->cdataBlock = xmlSAX2CDataBlock; STEPPED p1 [xmlSAXVersion in SAX2.c] 2751: hdlr->processingInstruction = xmlSAX2ProcessingInstruction; STEPPED p1 [xmlSAXVersion in SAX2.c] 2752: hdlr->comment = xmlSAX2Comment; STEPPED p1 [xmlSAXVersion in SAX2.c] 2753: hdlr->warning = xmlParserWarning; STEPPED p1 [xmlSAXVersion in SAX2.c] 2754: hdlr->error = xmlParserError; STEPPED p1 [xmlSAXVersion in SAX2.c] 2748: hdlr->characters = xmlSAX2Characters; STEPPED p1 [xmlSAXVersion in SAX2.c] 2750: hdlr->ignorableWhitespace = xmlSAX2Characters; STEPPED p1 [xmlSAXVersion in SAX2.c] 2754: hdlr->error = xmlParserError; STEPPED p1 [xmlSAXVersion in SAX2.c] 2755: hdlr->fatalError = xmlParserError; STEPPED p1 [xmlSAXVersion in SAX2.c] 2757: return(0); STEPPED p1 [xmlInitParserCtxt in parserInternals.c] 1529: if (ctxt->dict == NULL) STEPPED p1 [xmlInitParserCtxt in parserInternals.c] 1530: ctxt->dict = xmlDictCreate(); STEPPED p1 [xmlDictCreate in dict.c] 445: if (!xmlInitializeDict()) SIGNALED 11 (segv code[SEGV_MAPERR] address[0xbfe3a5dc]) in p1 0xbfe3a5dc (..............) jmp *1308(%ebx) debug> quit Running debug on a file without a DTD: $ debug /usr/local/bin/xmllint test-withoutdtd.xml New program xmllint (process p1) created HALTED p1 [main in xmllint.c] 2943: int version = 0; debug> step -c 0 STEPPED p1 [main in xmllint.c] 2946: if (argc <= 1) { STEPPED p1 [main in xmllint.c] 2950: LIBXML_TEST_VERSION STEPPED p1 [xmlCheckVersion in parserInternals.c] 75: if ((myversion / 10000) != (version / 10000)) { STEPPED p1 [xmlCheckVersion in parserInternals.c] 83: if ((myversion / 100) < (version / 100)) { STEPPED p1 [xmlCheckVersion in parserInternals.c] 87: } STEPPED p1 [main in xmllint.c] 2951: for (i = 1; i < argc ; i++) { STEPPED p1 [main in xmllint.c] 2952: if (!strcmp(argv[i], "-")) STEPPED p1 [main in xmllint.c] 2955: if (argv[i][0] != '-') STEPPED p1 [main in xmllint.c] 3265: if (nocatalogs == 0) { STEPPED p1 [main in xmllint.c] 3266: if (catalogs) { STEPPED p1 [main in xmllint.c] 3280: if (sax1) STEPPED p1 [main in xmllint.c] 3283: xmlSAXDefaultVersion(2); STEPPED p1 [xmlSAXDefaultVersion in SAX2.c] 2694: int ret = xmlSAX2DefaultVersionValue; STEPPED p1 [xmlSAXDefaultVersion in SAX2.c] 2696: if ((version != 1) && (version != 2)) STEPPED p1 [xmlSAXDefaultVersion in SAX2.c] 2698: xmlSAX2DefaultVersionValue = version; STEPPED p1 [xmlSAXDefaultVersion in SAX2.c] 2699: return(ret); STEPPED p1 [main in xmllint.c] 3286: if (chkregister) { STEPPED p1 [main in xmllint.c] 3291: indent = getenv("XMLLINT_INDENT"); STEPPED p1 [main in xmllint.c] 3292: if(indent != NULL) { STEPPED p1 [main in xmllint.c] 3297: defaultEntityLoader = xmlGetExternalEntityLoader(); STEPPED p1 [xmlGetExternalEntityLoader in xmlIO.c] 3861: return(xmlCurrentExternalEntityLoader); STEPPED p1 [main in xmllint.c] 3298: xmlSetExternalEntityLoader(xmllintExternalEntityLoader); STEPPED p1 [xmlSetExternalEntityLoader in xmlIO.c] 3849: xmlCurrentExternalEntityLoader = f; STEPPED p1 [main in xmllint.c] 3300: xmlLineNumbersDefault(1); STEPPED p1 [xmlLineNumbersDefault in parserInternals.c] 2013: int old = xmlLineNumbersDefaultValue; STEPPED p1 [xmlLineNumbersDefault in parserInternals.c] 2012: xmlLineNumbersDefault(int val) { STEPPED p1 [xmlLineNumbersDefault in parserInternals.c] 2013: int old = xmlLineNumbersDefaultValue; STEPPED p1 [xmlLineNumbersDefault in parserInternals.c] 2015: xmlLineNumbersDefaultValue = val; STEPPED p1 [xmlLineNumbersDefault in parserInternals.c] 2016: return(old); STEPPED p1 [main in xmllint.c] 3301: if (loaddtd != 0) STEPPED p1 [main in xmllint.c] 3303: if (dtdattrs) STEPPED p1 [main in xmllint.c] 3305: if (noent != 0) xmlSubstituteEntitiesDefault(1); STEPPED p1 [main in xmllint.c] 3307: if (valid != 0) xmlDoValidityCheckingDefaultValue = 1; STEPPED p1 [main in xmllint.c] 3309: if ((htmlout) && (!nowrap)) { STEPPED p1 [main in xmllint.c] 3323: if ((schematron != NULL) && (sax == 0) STEPPED p1 [main in xmllint.c] 3357: if ((relaxng != NULL) && (sax == 0) STEPPED p1 [main in xmllint.c] 3415: if ((pattern != NULL) STEPPED p1 [main in xmllint.c] 3429: for (i = 1; i < argc ; i++) { STEPPED p1 [main in xmllint.c] 3430: if ((!strcmp(argv[i], "-encode")) || STEPPED p1 [main in xmllint.c] 3434: } else if ((!strcmp(argv[i], "-o")) || STEPPED p1 [main in xmllint.c] 3441: if ((!strcmp(argv[i], "-dtdvalid")) || STEPPED p1 [main in xmllint.c] 3446: if ((!strcmp(argv[i], "-path")) || STEPPED p1 [main in xmllint.c] 3451: if ((!strcmp(argv[i], "-dtdvalidfpi")) || STEPPED p1 [main in xmllint.c] 3457: if ((!strcmp(argv[i], "-relaxng")) || STEPPED p1 [main in xmllint.c] 3462: if ((!strcmp(argv[i], "-maxmem")) || STEPPED p1 [main in xmllint.c] 3467: if ((!strcmp(argv[i], "-schema")) || STEPPED p1 [main in xmllint.c] 3472: if ((!strcmp(argv[i], "-schematron")) || STEPPED p1 [main in xmllint.c] 3478: if ((!strcmp(argv[i], "-pattern")) || STEPPED p1 [main in xmllint.c] 3484: if ((timing) && (repeat)) STEPPED p1 [main in xmllint.c] 3487: if ((argv[i][0] != '-') || (strcmp(argv[i], "-") == 0)) { STEPPED p1 [main in xmllint.c] 3488: if (repeat) { STEPPED p1 [main in xmllint.c] 3511: nbregister = 0; STEPPED p1 [main in xmllint.c] 3514: if (stream != 0) STEPPED p1 [main in xmllint.c] 3518: if (sax) { STEPPED p1 [main in xmllint.c] 3521: parseAndPrintFile(argv[i], NULL); STEPPED p1 [parseAndPrintFile in xmllint.c] 2049: xmlDocPtr doc = NULL; STEPPED p1 [parseAndPrintFile in xmllint.c] 2054: if ((timing) && (!repeat)) STEPPED p1 [parseAndPrintFile in xmllint.c] 2059: if (filename == NULL) { STEPPED p1 [parseAndPrintFile in xmllint.c] 2072: else if ((html) && (push)) { STEPPED p1 [parseAndPrintFile in xmllint.c] 2131: if (push) { STEPPED p1 [parseAndPrintFile in xmllint.c] 2171: if (testIO) { STEPPED p1 [parseAndPrintFile in xmllint.c] 2258: if (rectxt != NULL) STEPPED p1 [parseAndPrintFile in xmllint.c] 2262: if (sax1) STEPPED p1 [parseAndPrintFile in xmllint.c] 2266: doc = xmlReadFile(filename, NULL, options); STEPPED p1 [xmlReadFile in parser.c] 14314: ctxt = xmlCreateURLParserCtxt(filename, options); STEPPED p1 [xmlCreateURLParserCtxt in parser.c] 13167: ctxt = xmlNewParserCtxt(); STEPPED p1 [xmlNewParserCtxt in parserInternals.c] 1777: if (ctxt == NULL) { STEPPED p1 [xmlNewParserCtxt in parserInternals.c] 1781: memset(ctxt, 0, sizeof(xmlParserCtxt)); STEPPED p1 [xmlNewParserCtxt in parserInternals.c] 1782: if (xmlInitParserCtxt(ctxt) < 0) { STEPPED p1 [xmlInitParserCtxt in parserInternals.c] 1522: if(ctxt==NULL) { STEPPED p1 [xmlInitParserCtxt in parserInternals.c] 1527: xmlDefaultSAXHandlerInit(); STEPPED p1 [xmlDefaultSAXHandlerInit in SAX2.c] 2789: xmlSAXVersion((xmlSAXHandlerPtr) &xmlDefaultSAXHandler, 1); STEPPED p1 [xmlSAXVersion in SAX2.c] 2715: if (hdlr == NULL) return(-1); STEPPED p1 [xmlSAXVersion in SAX2.c] 2716: if (version == 2) { STEPPED p1 [xmlSAXVersion in SAX2.c] 2725: hdlr->startElement = xmlSAX2StartElement; STEPPED p1 [xmlSAXVersion in SAX2.c] 2726: hdlr->endElement = xmlSAX2EndElement; STEPPED p1 [xmlSAXVersion in SAX2.c] 2727: hdlr->initialized = 1; STEPPED p1 [xmlSAXVersion in SAX2.c] 2731: hdlr->internalSubset = xmlSAX2InternalSubset; STEPPED p1 [xmlSAXVersion in SAX2.c] 2732: hdlr->externalSubset = xmlSAX2ExternalSubset; STEPPED p1 [xmlSAXVersion in SAX2.c] 2733: hdlr->isStandalone = xmlSAX2IsStandalone; STEPPED p1 [xmlSAXVersion in SAX2.c] 2734: hdlr->hasInternalSubset = xmlSAX2HasInternalSubset; STEPPED p1 [xmlSAXVersion in SAX2.c] 2735: hdlr->hasExternalSubset = xmlSAX2HasExternalSubset; STEPPED p1 [xmlSAXVersion in SAX2.c] 2736: hdlr->resolveEntity = xmlSAX2ResolveEntity; STEPPED p1 [xmlSAXVersion in SAX2.c] 2737: hdlr->getEntity = xmlSAX2GetEntity; STEPPED p1 [xmlSAXVersion in SAX2.c] 2738: hdlr->getParameterEntity = xmlSAX2GetParameterEntity; STEPPED p1 [xmlSAXVersion in SAX2.c] 2739: hdlr->entityDecl = xmlSAX2EntityDecl; STEPPED p1 [xmlSAXVersion in SAX2.c] 2740: hdlr->attributeDecl = xmlSAX2AttributeDecl; STEPPED p1 [xmlSAXVersion in SAX2.c] 2741: hdlr->elementDecl = xmlSAX2ElementDecl; STEPPED p1 [xmlSAXVersion in SAX2.c] 2742: hdlr->notationDecl = xmlSAX2NotationDecl; STEPPED p1 [xmlSAXVersion in SAX2.c] 2743: hdlr->unparsedEntityDecl = xmlSAX2UnparsedEntityDecl; STEPPED p1 [xmlSAXVersion in SAX2.c] 2744: hdlr->setDocumentLocator = xmlSAX2SetDocumentLocator; STEPPED p1 [xmlSAXVersion in SAX2.c] 2745: hdlr->startDocument = xmlSAX2StartDocument; STEPPED p1 [xmlSAXVersion in SAX2.c] 2746: hdlr->endDocument = xmlSAX2EndDocument; STEPPED p1 [xmlSAXVersion in SAX2.c] 2747: hdlr->reference = xmlSAX2Reference; STEPPED p1 [xmlSAXVersion in SAX2.c] 2748: hdlr->characters = xmlSAX2Characters; STEPPED p1 [xmlSAXVersion in SAX2.c] 2749: hdlr->cdataBlock = xmlSAX2CDataBlock; STEPPED p1 [xmlSAXVersion in SAX2.c] 2751: hdlr->processingInstruction = xmlSAX2ProcessingInstruction; STEPPED p1 [xmlSAXVersion in SAX2.c] 2752: hdlr->comment = xmlSAX2Comment; STEPPED p1 [xmlSAXVersion in SAX2.c] 2753: hdlr->warning = xmlParserWarning; STEPPED p1 [xmlSAXVersion in SAX2.c] 2754: hdlr->error = xmlParserError; STEPPED p1 [xmlSAXVersion in SAX2.c] 2748: hdlr->characters = xmlSAX2Characters; STEPPED p1 [xmlSAXVersion in SAX2.c] 2750: hdlr->ignorableWhitespace = xmlSAX2Characters; STEPPED p1 [xmlSAXVersion in SAX2.c] 2754: hdlr->error = xmlParserError; STEPPED p1 [xmlSAXVersion in SAX2.c] 2755: hdlr->fatalError = xmlParserError; STEPPED p1 [xmlSAXVersion in SAX2.c] 2757: return(0); STEPPED p1 [xmlInitParserCtxt in parserInternals.c] 1529: if (ctxt->dict == NULL) STEPPED p1 [xmlInitParserCtxt in parserInternals.c] 1530: ctxt->dict = xmlDictCreate(); STEPPED p1 [xmlDictCreate in dict.c] 445: if (!xmlInitializeDict()) <?xml version="1.0" encoding="UTF-8"?> <greeting>Hello, world!</greeting> Process p1 has exited No more processes debug> quit
GNOME is going to shut down bugzilla.gnome.org in favor of gitlab.gnome.org. As part of that, we are mass-closing older open tickets in bugzilla.gnome.org which have not seen updates for a longer time (resources are unfortunately quite limited so not every ticket can get handled). If you can still reproduce the situation described in this ticket in a recent and supported software version, then please follow https://wiki.gnome.org/GettingInTouch/BugReportingGuidelines and create a new ticket at https://gitlab.gnome.org/GNOME/libxml2/-/issues/ Thank you for your understanding and your help.