diff options
Diffstat (limited to 'gdb/python/py-lazy-string.c')
-rw-r--r-- | gdb/python/py-lazy-string.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/gdb/python/py-lazy-string.c b/gdb/python/py-lazy-string.c index 940ce88..45ba41e 100644 --- a/gdb/python/py-lazy-string.c +++ b/gdb/python/py-lazy-string.c @@ -96,7 +96,8 @@ static PyObject * stpy_convert_to_value (PyObject *self, PyObject *args) { lazy_string_object *self_string = (lazy_string_object *) self; - struct value *val; + struct value *val = NULL; + volatile struct gdb_exception except; if (self_string->address == 0) { @@ -105,7 +106,12 @@ stpy_convert_to_value (PyObject *self, PyObject *args) return NULL; } - val = value_at_lazy (self_string->type, self_string->address); + TRY_CATCH (except, RETURN_MASK_ALL) + { + val = value_at_lazy (self_string->type, self_string->address); + } + GDB_PY_HANDLE_EXCEPTION (except); + return value_to_value_object (val); } |