[
https://issues.apache.org/jira/browse/XERCESC-1349?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Boris Kolpackov updated XERCESC-1349:
-------------------------------------
Component/s: (was: SAX/SAX2)
> GrammarResolver.cpp allocates XMLSchemaDescription out of wrong pool
> --------------------------------------------------------------------
>
> Key: XERCESC-1349
> URL:
https://issues.apache.org/jira/browse/XERCESC-1349> Project: Xerces-C++
> Issue Type: Bug
> Components: Validating Parser (DTD)
> Affects Versions: 2.6.0
> Environment: Solaris
> Reporter: Mark Weissman
>
> GrammarResolver.cpp allocates XMLSchemaDescription out of wrong pool
> This causes a memory leak and thread safety issues when sharing
> an unsynchronized grammar pool across multiple threads. I included diffs
> that affect my application. It would be good if somebody could check all uses of
> fGrammarPoolMemoryManager to verify the immutability of cached grammars
> and thread safety for the GrammarPool. When not parsing grammars, the
> pool should not change. I think fGrammarPool->createSchemaDescription may
> be generally dangerous.
> < XMLSchemaDescription* gramDesc = new (fMemoryManager) XMLSchemaDescriptionImpl(namespaceKey, fMemoryManager);
> ---
> > XMLSchemaDescription* gramDesc = fGrammarPool->createSchemaDescription(namespaceKey);
>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail:
c-dev-unsubscribe@...
For additional commands, e-mail:
c-dev-help@...