summaryrefslogtreecommitdiff
path: root/addr2line.c
diff options
context:
space:
mode:
authorYusuke Endoh <mame@ruby-lang.org>2021-02-04 17:45:54 +0900
committerYusuke Endoh <mame@ruby-lang.org>2021-02-04 17:45:54 +0900
commit7d22060c14895bbca3ff962e5456384095b66738 (patch)
tree1c69a969af19b465d61e911bc018010767bc9702 /addr2line.c
parent90f008f569718c8cbb311a7e0f939b639cd9e48a (diff)
addr2line.c: DW_LNS_fixed_advance_pc takes a single uhalf operand
Fixes [Bug #17609] Co-Authored-By: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com>
Diffstat (limited to 'addr2line.c')
-rw-r--r--addr2line.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/addr2line.c b/addr2line.c
index 9669427d36..2095591fec 100644
--- a/addr2line.c
+++ b/addr2line.c
@@ -437,7 +437,8 @@ parse_debug_line_cu(int num_traces, void **traces, char **debug_line,
addr += a;
break;
case DW_LNS_fixed_advance_pc:
- a = *(unsigned char *)p++;
+ a = *(uint16_t *)p;
+ p += sizeof(uint16_t);
addr += a;
break;
case DW_LNS_set_prologue_end: