You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by bu...@apache.org on 2002/11/16 10:49:41 UTC

DO NOT REPLY [Bug 14614] New: - XercesParserLiason deletes Xerces documents it does not own

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14614>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14614

XercesParserLiason deletes Xerces documents it does not own

           Summary: XercesParserLiason deletes Xerces documents it does not
                    own
           Product: XalanC
           Version: 1.4.x
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: XalanC
        AssignedTo: xalan-dev@xml.apache.org
        ReportedBy: berin@ozemail.com.au


NOTE - this applies to current CVS - not to 1.4

If XercesParserLiason::createDocument(DOMDocument *) is called with a previously
parsed document, it is added to the document map held by the liason object.

When the liason object is deleted or goes out of scope, it deletes all
DOMDocument * nodes that it holds in the map, even those it didn't create.

I have added a boolean to the struct used in the map to indicate if a document
is owned and then added an update to the CPP file to turn this to false if the
createDocument function is called and then not delete if it is false.

Will supply two patch files - hope they are of use.

Cheers,
     Berin