You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by ca...@apache.org on 2005/06/21 21:02:56 UTC

svn commit: r191710 - /xerces/c/branches/xerces-2.7/src/xercesc/validators/schema/TraverseSchema.cpp

Author: cargilld
Date: Tue Jun 21 12:02:55 2005
New Revision: 191710

URL: http://svn.apache.org/viewcvs?rev=191710&view=rev
Log:
Add back changes Bertoni made that were overwritten.

Modified:
    xerces/c/branches/xerces-2.7/src/xercesc/validators/schema/TraverseSchema.cpp

Modified: xerces/c/branches/xerces-2.7/src/xercesc/validators/schema/TraverseSchema.cpp
URL: http://svn.apache.org/viewcvs/xerces/c/branches/xerces-2.7/src/xercesc/validators/schema/TraverseSchema.cpp?rev=191710&r1=191709&r2=191710&view=diff
==============================================================================
--- xerces/c/branches/xerces-2.7/src/xercesc/validators/schema/TraverseSchema.cpp (original)
+++ xerces/c/branches/xerces-2.7/src/xercesc/validators/schema/TraverseSchema.cpp Tue Jun 21 12:02:55 2005
@@ -158,6 +158,8 @@
     ENUM_ELT_SIZE
 };
 
+typedef JanitorMemFunCall<TraverseSchema>   CleanupType;
+
 // ---------------------------------------------------------------------------
 //  TraverseSchema: Constructors and Destructor
 // ---------------------------------------------------------------------------
@@ -219,6 +221,7 @@
     , fAnnotation(0)
     , fAttributeCheck(manager)
 {
+    CleanupType cleanup(this, &TraverseSchema::cleanUp);
 
     try {
 
@@ -232,13 +235,12 @@
     }
     catch(const OutOfMemoryException&)
     {
-        throw;
-    }
-    catch(...) {
+        cleanup.release();
 
-        cleanUp();
         throw;
     }
+
+    cleanup.release();
 }
 
 



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xerces.apache.org
For additional commands, e-mail: commits-help@xerces.apache.org