aboutsummaryrefslogtreecommitdiff
path: root/gdb/varobj.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/varobj.c')
-rw-r--r--gdb/varobj.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gdb/varobj.c b/gdb/varobj.c
index 5cc6e88..9205e9d 100644
--- a/gdb/varobj.c
+++ b/gdb/varobj.c
@@ -781,8 +781,9 @@ varobj_set_value (struct varobj *var, char *expression)
value_ptr temp;
input_radix = 10; /* ALWAYS reset to decimal temporarily */
- /* FIXME: Callee may longjump */
- exp = parse_exp_1 (&s, 0, 0);
+ if (!gdb_parse_exp_1 (&s, 0, 0, &exp))
+ /* We cannot proceed without a well-formed expression. */
+ return 0;
if (!gdb_evaluate_expression (exp, &value))
{
/* We cannot proceed without a valid expression. */