OSDN Git Service

2004-11-01 Momchil Velikov <velco@fadata.bg>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / libsupc++ / eh_globals.cc
index b63fc1e..0f0dee5 100644 (file)
@@ -48,7 +48,17 @@ static void
 get_globals_dtor (void *ptr)
 {
   if (ptr)
-    std::free (ptr);
+    {
+      __cxa_exception *exn, *next;
+      exn = ((__cxa_eh_globals *) ptr)->caughtExceptions;
+      while (exn)
+       {
+         next = exn->nextException;
+         _Unwind_DeleteException (&exn->unwindHeader);
+         exn = next;
+       }
+      std::free (ptr);
+    }
 }
 
 static void