Module: wine Branch: refs/heads/master Commit: 4d7f9f7c65343179709cfd201f0250d2cb236d36 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=4d7f9f7c65343179709cfd20...
Author: Eric Pouech eric.pouech@wanadoo.fr Date: Tue Dec 6 10:57:17 2005 +0100
winedbg: Fixed broken code about type management for binary operator.
---
programs/winedbg/expr.c | 10 ++++++---- 1 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/programs/winedbg/expr.c b/programs/winedbg/expr.c index 5eb4d49..5815298 100644 --- a/programs/winedbg/expr.c +++ b/programs/winedbg/expr.c @@ -482,16 +482,18 @@ struct dbg_lvalue expr_eval(struct expr* rtn.type.id = dbg_itype_signed_int; rtn.type.module = 0; rtn.addr.Offset = (unsigned int)&exp->un.binop.result; + type1 = exp1.type; + type2 = exp2.type; switch (exp->un.binop.binop_type) { case EXP_OP_ADD: if (!types_get_info(&exp1.type, TI_GET_SYMTAG, &tag) || tag != SymTagPointerType || - !types_get_info(&exp1.type, TI_GET_TYPE, &type1)) + !types_get_info(&exp1.type, TI_GET_TYPE, &type1.id)) type1.id = dbg_itype_none; if (!types_get_info(&exp2.type, TI_GET_SYMTAG, &tag) || tag != SymTagPointerType || - !types_get_info(&exp2.type, TI_GET_TYPE, &type2)) + !types_get_info(&exp2.type, TI_GET_TYPE, &type2.id)) type2.id = dbg_itype_none; scale1 = 1; scale2 = 1; @@ -513,11 +515,11 @@ struct dbg_lvalue expr_eval(struct expr* case EXP_OP_SUB: if (!types_get_info(&exp1.type, TI_GET_SYMTAG, &tag) || tag != SymTagPointerType || - !types_get_info(&exp1.type, TI_GET_TYPE, &type1)) + !types_get_info(&exp1.type, TI_GET_TYPE, &type1.id)) type1.id = dbg_itype_none; if (!types_get_info(&exp2.type, TI_GET_SYMTAG, &tag) || tag != SymTagPointerType || - !types_get_info(&exp2.type, TI_GET_TYPE, &type2)) + !types_get_info(&exp2.type, TI_GET_TYPE, &type2.id)) type2.id = dbg_itype_none; scale1 = 1; scale2 = 1;