From a728960949c7e21c6172b3464a4e7a91f65d4baa Mon Sep 17 00:00:00 2001 From: Mark Kettenis Date: Sat, 20 Nov 2004 10:10:17 +0000 Subject: [PATCH] * dwarf2-frame.c (read_encoded_value): Correctly calculate number of bytes read for aligned LEB128 encodings. --- gdb/ChangeLog | 5 +++++ gdb/dwarf2-frame.c | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 904af440f20..512b841e9fc 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2004-11-20 Mark Kettenis + + * dwarf2-frame.c (read_encoded_value): Correctly calculate number + of bytes read for aligned LEB128 encodings. + 2004-11-19 Mark Kettenis * bsd-kvm.c (bsd_kvm_pcb_cmd): Cast return value from diff --git a/gdb/dwarf2-frame.c b/gdb/dwarf2-frame.c index 03984e277ca..fc0ac8b709e 100644 --- a/gdb/dwarf2-frame.c +++ b/gdb/dwarf2-frame.c @@ -1176,7 +1176,7 @@ read_encoded_value (struct comp_unit *unit, unsigned char encoding, { ULONGEST value; unsigned char *end_buf = buf + (sizeof (value) + 1) * 8 / 7; - *bytes_read_ptr = read_uleb128 (buf, end_buf, &value) - buf; + *bytes_read_ptr += read_uleb128 (buf, end_buf, &value) - buf; return base + value; } case DW_EH_PE_udata2: @@ -1192,7 +1192,7 @@ read_encoded_value (struct comp_unit *unit, unsigned char encoding, { LONGEST value; char *end_buf = buf + (sizeof (value) + 1) * 8 / 7; - *bytes_read_ptr = read_sleb128 (buf, end_buf, &value) - buf; + *bytes_read_ptr += read_sleb128 (buf, end_buf, &value) - buf; return base + value; } case DW_EH_PE_sdata2: -- 2.30.2