[ https://issues.apache.org/jira/browse/XERCESC-1652?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Scott Cantor reopened XERCESC-1652: ----------------------------------- > DOMDocumentTypeImpl is not thread safe > -------------------------------------- > > Key: XERCESC-1652 > URL: https://issues.apache.org/jira/browse/XERCESC-1652 > Project: Xerces-C++ > Issue Type: Bug > Components: DOM > Affects Versions: 2.7.0, 2.8.0 > Environment: Multithreaded programs > Reporter: Jesse Pelton > Priority: Major > 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 was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: c-dev-unsubscr...@xerces.apache.org For additional commands, e-mail: c-dev-h...@xerces.apache.org