diff options
-rw-r--r-- | libdwfl/ChangeLog | 5 | ||||
-rw-r--r-- | libdwfl/frame_unwind.c | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/libdwfl/ChangeLog b/libdwfl/ChangeLog index 3e19d9bd..7c9a018b 100644 --- a/libdwfl/ChangeLog +++ b/libdwfl/ChangeLog @@ -1,5 +1,10 @@ 2019-04-28 Mark Wielaard <mark@klomp.org> + * frame_unwind.c (expr_eval): Make sure we left shift a unsigned + 64bit value. + +2019-04-28 Mark Wielaard <mark@klomp.org> + * cu.c (addrarange): Only call realloc when naranges is not zero. 2019-03-27 Mark Wielaard <mark@klomp.org> diff --git a/libdwfl/frame_unwind.c b/libdwfl/frame_unwind.c index 8da691ee..d7dfa5a9 100644 --- a/libdwfl/frame_unwind.c +++ b/libdwfl/frame_unwind.c @@ -336,7 +336,7 @@ expr_eval (Dwfl_Frame *state, Dwarf_Frame *frame, const Dwarf_Op *ops, val1 >>= (addr_bytes - op->number) * 8; #else if (op->number < 8) - val1 &= (1 << (op->number * 8)) - 1; + val1 &= (1ULL << (op->number * 8)) - 1; #endif } if (! push (val1)) |