[ http://issues.apache.org/jira/browse/XERCESC-1420?page=comments#action_66428 ] James Berry commented on XERCESC-1420: --------------------------------------
David, Wow. You have been working hard! I think this looks reasonable. You've basically done three things: - Pass memorymgr into mutex creation. - Create/use a mutex holder to wrap the mutex creation with memory managed object. - Other ancillary cleanups like memory management for netaccessors and msgloaders. I think all that looks fine. The only questions/thoughts I have are with the MutexHolder, which actually turns out to be a fairly generic wrapper for any type of object... - Should we generisize it beyond mutex? - Maybe castTo should return a reference rather than a pointer? James. > XMLPlatformUtils::makeMutex() creates mutex objects using the C++ runtime > heap instead of using a MemoryManager instance > ------------------------------------------------------------------------------------------------------------------------ > > Key: XERCESC-1420 > URL: http://issues.apache.org/jira/browse/XERCESC-1420 > Project: Xerces-C++ > Type: Bug > Components: Utilities > Versions: 2.6.0 > Reporter: David Bertoni > Assignee: David Bertoni > Priority: Blocker > Attachments: XMLMutexHolder.c, XMLMutexHolder.hpp, patch.txt > > XMLPlatformUtils::makeMutex() needs to accept a MemoryManager instance as a > parameter to use pluggable memory management. As it stands now, mutex > objects on the various platforms are created using the C++ run-time heap. > This is causing memory allocation issues and crashes in our application. > I am preparing a patch, but it covers all platforms, so I won't be able to > test every one of them. -- 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]
