[ http://issues.apache.org/jira/browse/XERCESC-1652?page=all ]

Jesse Pelton updated XERCESC-1652:
----------------------------------

    Attachment: DOMDocumentTypeImpl.diff

> DOMDocumentTypeImpl is not thread safe
> --------------------------------------
>
>                 Key: XERCESC-1652
>                 URL: http://issues.apache.org/jira/browse/XERCESC-1652
>             Project: Xerces-C++
>          Issue Type: Bug
>          Components: DOM
>    Affects Versions: 2.7.0
>         Environment: Multithreaded programs
>            Reporter: Jesse Pelton
>         Attachments: DOMDocumentTypeImpl.diff
>
>
> DOMDocumentTypeImpl.cpp uses a static gDocTypeDocument() method to return a 
> singleton doctype document that provides various utility services (allocating 
> named node maps, cloning strings, and so on). Any calls to methods of this 
> static document that can modify its instance data, including calls that 
> allocate memory, must be synchronized to keep the document's state consistent.
> Patch against the trunk to follow, but note that it should be reviewed 
> carefully. First, I pretty much blindly copied the synchronization code from 
> DOMImplementationRegistry.cpp and may have gotten something wrong. Second, 
> the patch is adapted from changes I made to v2.7.0 code and has not been 
> tested (or even compiled) (Updates to the trunk prevent successful 
> application of a patch against v2.7.0 to code from the trunk.) And lastly, 
> it's possible that the trunk updates obsolete my patch, though it still seems 
> relevant.

-- 
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
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to