dbertoni 2003/08/06 14:08:05
Modified: c/src/xalanc/XercesParserLiaison XercesParserLiaison.cpp
Log:
Fixed a bug where deleteDocument() would not delete a new wrapper document.
Revision Changes Path
1.2 +7 -4
xml-xalan/c/src/xalanc/XercesParserLiaison/XercesParserLiaison.cpp
Index: XercesParserLiaison.cpp
===================================================================
RCS file:
/home/cvs/xml-xalan/c/src/xalanc/XercesParserLiaison/XercesParserLiaison.cpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- XercesParserLiaison.cpp 29 Jun 2003 03:58:25 -0000 1.1
+++ XercesParserLiaison.cpp 6 Aug 2003 21:08:05 -0000 1.2
@@ -2,7 +2,7 @@
* The Apache Software License, Version 1.1
*
*
- * Copyright (c) 1999-2002 The Apache Software Foundation. All rights
+ * Copyright (c) 1999-2003 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -295,11 +295,14 @@
void
XercesParserLiaison::destroyDocument(XalanDocument* theDocument)
{
- if (mapDocument(theDocument) != 0)
+ const DocumentMapType::iterator i =
+ m_documentMap.find(theDocument);
+
+ if (i != m_documentMap.end())
{
- m_documentMap.erase(theDocument);
+ const XalanAutoPtr<XalanDocument> theGuard(theDocument);
- delete theDocument;
+ m_documentMap.erase(i);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]