zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 395ab474eba31f5bbe95e96cab06ab066384c4af (tree)
parent 6a5e2b713fbaa009bb4ec73cf132a0bab6af6205
Author: kcbanner <kcbanner@gmail.com>
Date:   Sun,  2 Jul 2023 02:57:35 -0400

dwarf: fix logic error in eh_frame_hdry binary search

Diffstat:
Mlib/std/dwarf.zig | 11+++++++----
1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/lib/std/dwarf.zig b/lib/std/dwarf.zig @@ -1886,10 +1886,13 @@ pub const ExceptionFrameHeader = struct { .data_rel_base = eh_frame_hdr_ptr, }, builtin.cpu.arch.endian()) orelse return badDwarf(); - if (pc >= pc_begin) left = mid; - if (pc == pc_begin) break; - - len /= 2; + if (pc < pc_begin) { + len /= 2; + } else { + left = mid; + if (pc == pc_begin) break; + len -= len / 2; + } } try stream.seekTo(left * entry_size);