You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by Alberto Massari <am...@datadirect.com> on 2005/01/26 15:37:59 UTC

RE: [jira] Resolved: (XERCESC-490) Memory leak when setCreateEntityReferenceNodes is true

Hi Tony,
you can get a TAR file of the CVS repository at 
http://cvs.apache.org/snapshots/xml-xerces/. There is no pre-built package 
for snapshots, so you will have to build it from the sources.

Thanks,
Alberto

At 09.33 26/01/2005 -0500, Wuebben, Anthony E. (LNG-DAY) wrote:
>Alberto:
>
>How can we get to the nightly build to test this fix.
>
>Thanks
>Tony Wuebben
>
>-----Original Message-----
>From: Alberto Massari (JIRA) [mailto:xerces-c-dev@xml.apache.org]
>Sent: Friday, January 14, 2005 5:42 AM
>To: anthony.wuebben@lexisnexis.com
>Subject: [jira] Resolved: (XERCESC-490) Memory leak when
>setCreateEntityReferenceNodes is true
>
>      [ http://issues.apache.org/jira/browse/XERCESC-490?page=history ]
>
>Alberto Massari resolved XERCESC-490:
>-------------------------------------
>
>      Assign To:     (was: Xerces-C Developers Mailing List)
>     Resolution: Fixed
>
>It turns out that the deprecated DOM was not releasing all the reference
>counts on the document tree when an entity references were created. I
>checked in a fix for this (even if it was the deprecated DOM); please
>verify.
>
>Alberto
>
> > Memory leak when setCreateEntityReferenceNodes is true
> > ------------------------------------------------------
> >
> >          Key: XERCESC-490
> >          URL: http://issues.apache.org/jira/browse/XERCESC-490
> >      Project: Xerces-C++
> >         Type: Bug
> >   Components: DOM
> >     Versions: 1.7.0
> >  Environment: Operating System: Solaris
> > Platform: Sun
> >     Reporter: Tony Wuebben
>
> >
> > I'm running on Solaris 5.7 with xerces 1.7 and I am seeing the following
> > problem:
> > My long running applications are leaking what appears to be the entire DOM
> > tree when setCreateEntityReferenceNodes() is set to true and the XML file
> > being parsed contains a entity reference.  If I turn off the creatation of
> > entity references or pass in a file that does not contain entity-reference
> > everything is fine.
> > Below is a sample of the code that fails. Just give it the below document
> > that contains an entity-reference and it leaks.
> > CODE
> > while(1) {
> >
> >     try {
> >         fprintf(stderr,"Calling XMLPlatformUtils::Initialize()\n");
> >         XMLPlatformUtils::Initialize();
> >         }
> >     catch(const XMLException& toCatch) {
> >         char *cp = XMLString::transcode(toCatch.getMessage());
> >         fprintf(stderr,"Error during Xerces-c Initialization: [%s]\n",cp);
> >         delete [] cp;
> >         return 1;
> >         }
> >
> >          DOMParser * _parser = new DOMParser;
> >
> >         _parser->setDoValidation(false);
> >         _parser->setValidationScheme(DOMParser::Val_Never);
> >         _parser->setCreateEntityReferenceNodes(true);
> >         _parser->setToCreateXMLDeclTypeNode(true);
> >         _parser->setIncludeIgnorableWhitespace(true);
> >         _parser->setDoNamespaces(false);
> >
> >        _parser->parse(filename);
> >
> >         delete _parser;
> >     try {
> >         fprintf(stderr,"Calling XMLPlatformUtils::Terminate()\n");
> >         XMLPlatformUtils::Terminate();
> >         }
> >     catch(const XMLException& toCatch) {
> >         char *cp = XMLString::transcode(toCatch.getMessage());
> >         fprintf(stderr,"Error during Xerces-c Termination: [%s]\n",cp);
> >         delete [] cp;
> >         }
> > } // end forever
> >         exit(0);
> > }
> > FILE
> > <!DOCTYPE foo [
> >         <!ELEMENT foo (foo1|foo2) >
> >         <!ELEMENT foo1 (#PCDATA)* >
> >         <!ELEMENT foo2 (#PCDATA)* >
> > <!ENTITY entityfoo "entity-value">
> > ]>
> > <foo><foo1>This a some test data &entityfoo; and more test data
> > nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn</foo1></foo>
>
>--
>This message is automatically generated by JIRA.
>-
>If you think it was sent incorrectly contact one of the administrators:
>    http://issues.apache.org/jira/secure/Administrators.jspa
>-
>If you want more information on JIRA, or have a bug to report see:
>    http://www.atlassian.com/software/jira
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: xerces-c-dev-unsubscribe@xml.apache.org
>For additional commands, e-mail: xerces-c-dev-help@xml.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-c-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-c-dev-help@xml.apache.org