libtool-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[SCM] GNU Libtool branch, master, updated. v2.2.10-28-gc490120


From: Charles Wilson
Subject: [SCM] GNU Libtool branch, master, updated. v2.2.10-28-gc490120
Date: Sat, 19 Jun 2010 21:50:12 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Libtool".

The branch, master has been updated
       via  c4901206cff33e5e1eae76684a9d8f416df29af5 (commit)
      from  80333a915ca8aafa980e4d284ad9bf2d85c8b59f (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit c4901206cff33e5e1eae76684a9d8f416df29af5
Author: Charles Wilson <address@hidden>
Date:   Sat Jun 19 16:29:45 2010 -0400

    [cygwin] Fix segfault in C++ exception handling test
    
    * tests/exceptions.at (main.cpp:exceptions_in_module):
    Move dlclose outside catch block; otherwise __cxa_end_catch
    (part of the cygwin g++ ABI) accesses pointers to data inside
    unloaded DLL. This is a platform ABI-specific bug, but is
    likely common to many platforms' g++ and/or other C++
    compilers.
    
    Signed-off-by: Charles Wilson <address@hidden>

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog           |   10 ++++++++++
 tests/exceptions.at |    6 ++++++
 2 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index ae37906..17a1406 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2010-06-19  Charles Wilson  <address@hidden>
+
+       [cygwin] Fix segfault in C++ exception handling test
+       * tests/exceptions.at (main.cpp:exceptions_in_module):
+       Move dlclose outside catch block; otherwise __cxa_end_catch
+       (part of the cygwin g++ ABI) accesses pointers to data inside
+       unloaded DLL. This is a platform ABI-specific bug, but is
+       likely common to many platforms' g++ and/or other C++
+       compilers.
+
 2010-06-19  Ralf Wildenhues  <address@hidden>
 
        Fix srcdir computation for manual runs of old tests.
diff --git a/tests/exceptions.at b/tests/exceptions.at
index 293723c..23442a3 100644
--- a/tests/exceptions.at
+++ b/tests/exceptions.at
@@ -202,11 +202,17 @@ int exceptions_in_module (void)
       return 1;
     }
 
+  bool exception_caught = false;
   try {
     (*pf) ();
   }
   catch (modexc e) {
     std::cerr << "caught: " << e.what () << '\n';
+    exception_caught = true;
+  }
+
+  if (exception_caught)
+  {
     if (lt_dlclose (handle))
       {
         std::cerr << "dlclose failed: " << lt_dlerror () << '\n';


hooks/post-receive
-- 
GNU Libtool



reply via email to

[Prev in Thread] Current Thread [Next in Thread]