comparison src/ex_cmds2.c @ 13274:f4b4162264b1 v8.0.1511

patch 8.0.1511: some code for the debugger watch expression is clumsy commit https://github.com/vim/vim/commit/3198870137df64214317151726648af8e56f1729 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Feb 13 12:57:42 2018 +0100 patch 8.0.1511: some code for the debugger watch expression is clumsy Problem: Some code for the debugger watch expression is clumsy. Solution: Clean up the code.
author Christian Brabandt <cb@256bit.org>
date Tue, 13 Feb 2018 13:00:06 +0100
parents 50e1077e0c3d
children b5806be0b36d
comparison
equal deleted inserted replaced
13273:0d9d7e54e506 13274:f4b4162264b1
986 debug_newval = typval_tostring(bp->dbg_val); 986 debug_newval = typval_tostring(bp->dbg_val);
987 line = TRUE; 987 line = TRUE;
988 } 988 }
989 else 989 else
990 { 990 {
991 typval_T val3; 991 if (typval_compare(tv, bp->dbg_val, TYPE_EQUAL,
992 992 TRUE, FALSE) == OK
993 if (typval_copy(bp->dbg_val, &val3) == OK) 993 && tv->vval.v_number == FALSE)
994 { 994 {
995 if (typval_compare(tv, &val3, TYPE_EQUAL, 995 typval_T *v;
996 TRUE, FALSE, TRUE) == OK 996
997 && tv->vval.v_number == FALSE) 997 line = TRUE;
998 { 998 debug_oldval = typval_tostring(bp->dbg_val);
999 typval_T *v; 999 /* Need to evaluate again, typval_compare() overwrites
1000 1000 * "tv". */
1001 line = TRUE; 1001 v = eval_expr(bp->dbg_name, NULL);
1002 debug_oldval = typval_tostring(bp->dbg_val); 1002 debug_newval = typval_tostring(v);
1003 v = eval_expr(bp->dbg_name, NULL); 1003 free_tv(bp->dbg_val);
1004 debug_newval = typval_tostring(v); 1004 bp->dbg_val = v;
1005 free_tv(bp->dbg_val);
1006 bp->dbg_val = v;
1007 }
1008 } 1005 }
1009 free_tv(tv); 1006 free_tv(tv);
1010 } 1007 }
1011 } 1008 }
1012 else if (bp->dbg_val != NULL) 1009 else if (bp->dbg_val != NULL)