From a725174f4359458eabaa78566a04b22f63d31e32 Mon Sep 17 00:00:00 2001 From: Zhiyao Ma Date: Thu, 29 Aug 2024 01:32:37 -0400 Subject: [PATCH] Bug fix: Correctly distinguish compact vs generic personality. --- src/unwind/unw_table.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/unwind/unw_table.rs b/src/unwind/unw_table.rs index b57e7cf..3163ba7 100644 --- a/src/unwind/unw_table.rs +++ b/src/unwind/unw_table.rs @@ -443,7 +443,7 @@ impl<'a> ExTabEntry<'a> { let raw_pers = extab[entry_offset + 3]; // If the most significant bit is set, it is the compact model. - if (raw_pers & 0xf0) == 0xf0 { + if (raw_pers & 0x80) == 0x80 { // Personality selector. Currently only 0, 1, 2 are defined. Others // are reserved. let pers_sel = raw_pers & 0x0f;