diff options
author | Kai Tietz <ktietz@redhat.com> | 2014-02-18 18:02:54 +0100 |
---|---|---|
committer | Kai Tietz <ktietz@gcc.gnu.org> | 2014-02-18 18:02:54 +0100 |
commit | 0bb4fc0517da4f29db38d14d06b45f2fa20977dd (patch) | |
tree | 90f10f3ad8c53a30f399191c31a4832435b45b93 /libgcc/unwind-seh.c | |
parent | 48810be0cd39f6c2c22de02727d2e8662da22ec9 (diff) | |
download | gcc-0bb4fc0517da4f29db38d14d06b45f2fa20977dd.zip gcc-0bb4fc0517da4f29db38d14d06b45f2fa20977dd.tar.gz gcc-0bb4fc0517da4f29db38d14d06b45f2fa20977dd.tar.bz2 |
re PR objc/56870 (@catch handler broken with SEH)
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: r207849
Diffstat (limited to 'libgcc/unwind-seh.c')
-rw-r--r-- | libgcc/unwind-seh.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libgcc/unwind-seh.c b/libgcc/unwind-seh.c index 125af97..b4a3ca1 100644 --- a/libgcc/unwind-seh.c +++ b/libgcc/unwind-seh.c @@ -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. */ |