]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR objc/56870 (@catch handler broken with SEH)
authorKai Tietz <ktietz@redhat.com>
Tue, 18 Feb 2014 17:04:38 +0000 (18:04 +0100)
committerKai Tietz <ktietz@gcc.gnu.org>
Tue, 18 Feb 2014 17:04:38 +0000 (18:04 +0100)
2014-02-18  Kai Tietz  <ktietz@redhat.com>
Jonathan Schleifer  <js@webkeks.org>

PR objc/56870
* unwind-seh.c (_GCC_specific_handler): Pass proper
value to unwind-handler.

Co-Authored-By: Jonathan Schleifer <js@webkeks.org>
From-SVN: r207850

libgcc/ChangeLog
libgcc/unwind-seh.c

index 960c8435569005c29eec9622346d06eeaa47daf4..a233be9527e599243b7ec3e75ca6adf8466b597f 100644 (file)
@@ -1,3 +1,10 @@
+2014-02-18  Kai Tietz  <ktietz@redhat.com>
+       Jonathan Schleifer  <js@webkeks.org>
+
+       PR objc/56870
+       * unwind-seh.c (_GCC_specific_handler): Pass proper
+       value to unwind-handler.
+
 2014-01-25  Walter Lee  <walt@tilera.com>
 
        Backport from mainline
index 54a86213f9ae14a6b8e6363be528f31c21c625b1..9fd5e850da672e1c8324689d2a6cadb80d70776e 100644 (file)
@@ -313,8 +313,9 @@ _GCC_specific_handler (PEXCEPTION_RECORD ms_exc, void *this_frame,
          ms_exc->ExceptionInformation[3] = gcc_context.reg[1];
 
          /* Begin phase 2.  Perform the unwinding.  */
-         RtlUnwindEx (this_frame, gcc_context.ra, ms_exc, gcc_exc,
-                      ms_orig_context, ms_disp->HistoryTable);
+         RtlUnwindEx (this_frame, gcc_context.ra, ms_exc,
+                      (PVOID)gcc_context.reg[0], ms_orig_context,
+                      ms_disp->HistoryTable);
        }
 
       /* In _Unwind_RaiseException we return _URC_FATAL_PHASE1_ERROR.  */