summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Storsjo <martin@martin.st>2018-12-11 09:53:11 +0000
committerMartin Storsjo <martin@martin.st>2018-12-11 09:53:11 +0000
commit03a10740898eeb2b0c7a7c6bea3e293a221309a1 (patch)
treeba6cfd39934162f83d9b8dd76d98d26eca8eab20
parent0731f1a06eb8d6f1d6ab258e8019b49d2dff8af3 (diff)
downloadlibunwind_llvm-03a10740898eeb2b0c7a7c6bea3e293a221309a1.tar.gz
[SEH] Zero-initialize EXCEPTION_RECORD and UNWIND_HISTORY_TABLE before calling RtlUnwindEx
This fixes PR39935. git-svn-id: https://llvm.org/svn/llvm-project/libunwind/trunk@348836 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--src/Unwind-seh.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/Unwind-seh.cpp b/src/Unwind-seh.cpp
index 73616a8..73a950a 100644
--- a/src/Unwind-seh.cpp
+++ b/src/Unwind-seh.cpp
@@ -374,6 +374,8 @@ _Unwind_Resume(_Unwind_Exception *exception_object) {
CONTEXT ms_ctx;
UNWIND_HISTORY_TABLE hist;
+ memset(&ms_exc, 0, sizeof(ms_exc));
+ memset(&hist, 0, sizeof(hist));
ms_exc.ExceptionCode = STATUS_GCC_THROW;
ms_exc.ExceptionFlags = EXCEPTION_NONCONTINUABLE;
ms_exc.NumberParameters = 4;