Module: wine Branch: master Commit: ced42c449a9c2fbe6225b62b389aee127f3b2c85 URL: https://gitlab.winehq.org/wine/wine/-/commit/ced42c449a9c2fbe6225b62b389aee1...
Author: Eric Pouech epouech@codeweavers.com Date: Mon Aug 21 10:50:50 2023 +0200
dbghelp: Fix sign extension issues on 32bit compilation.
Signed-off-by: Eric Pouech epouech@codeweavers.com
---
dlls/dbghelp/dwarf.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/dbghelp/dwarf.c b/dlls/dbghelp/dwarf.c index b8bc3ae2e49..2a4f9a16228 100644 --- a/dlls/dbghelp/dwarf.c +++ b/dlls/dbghelp/dwarf.c @@ -3761,7 +3761,7 @@ static void apply_frame_state(const struct module* module, struct cpu_stack_walk *cfa = eval_expression(module, csw, (const unsigned char*)state->cfa_offset, context); break; default: - *cfa = get_context_reg(module, csw, context, state->cfa_reg) + state->cfa_offset; + *cfa = get_context_reg(module, csw, context, state->cfa_reg) + (LONG_PTR)state->cfa_offset; break; } if (!*cfa) return; @@ -3775,7 +3775,7 @@ static void apply_frame_state(const struct module* module, struct cpu_stack_walk case RULE_SAME: break; case RULE_CFA_OFFSET: - set_context_reg(module, csw, &new_context, i, *cfa + state->regs[i], TRUE); + set_context_reg(module, csw, &new_context, i, *cfa + (LONG_PTR)state->regs[i], TRUE); break; case RULE_OTHER_REG: copy_context_reg(module, csw, &new_context, i, context, state->regs[i]);