[libunwind] [SEH] Clear DISPATCHER_CONTEXT when initializing a cursor
authorMartin Storsjö <martin@martin.st>
Tue, 18 Apr 2023 12:42:35 +0000 (15:42 +0300)
committerMartin Storsjö <martin@martin.st>
Sat, 22 Apr 2023 19:47:45 +0000 (22:47 +0300)
commitf6320f5e0e63268049086d17e903ee9bc80a996d
tree03063a577b915ad3e906dd29a8d89dba831876a3
parent745221268125e86b1543a7aa643414e9cc8cb2d2
[libunwind] [SEH] Clear DISPATCHER_CONTEXT when initializing a cursor

We only initialize a few fields in DISPATCHER_CONTEXT - don't leave
the rest in an uninitialized state; make sure the whole struct is
in a deterministic state.

This makes nondeterministic failures deterministic, for some cases
relating to forced unwinding on aarch64/arm (which requires filling
in parsing of the xdata for finding the exception handler and LSDA).

Differential Revision: https://reviews.llvm.org/D148660
libunwind/src/UnwindCursor.hpp