[1/3] Use gdbpy_convert_exception in a few more spots
Commit Message
I noticed a few places were converting a gdb exception to a Python
exception "by hand". It's better to use the existing
gdbpy_convert_exception helper function, as this handles memory errors
correctly, and in the future may be enhanced in other ways.
gdb/ChangeLog
2018-12-25 Tom Tromey <tom@tromey.com>
* python/py-value.c (convert_value_from_python): Use
gdbpy_convert_exception.
* python/py-param.c (parmpy_init): Use gdbpy_convert_exception.
* python/py-cmd.c (cmdpy_init): Use gdbpy_convert_exception.
* python/py-breakpoint.c (bppy_init): Use
gdbpy_convert_exception.
---
gdb/ChangeLog | 9 +++++++++
gdb/python/py-breakpoint.c | 4 +---
gdb/python/py-cmd.c | 4 +---
gdb/python/py-param.c | 4 +---
gdb/python/py-value.c | 4 +---
5 files changed, 13 insertions(+), 12 deletions(-)
@@ -874,9 +874,7 @@ bppy_init (PyObject *self, PyObject *args, PyObject *kwargs)
CATCH (except, RETURN_MASK_ALL)
{
bppy_pending_object = NULL;
- PyErr_Format (except.reason == RETURN_QUIT
- ? PyExc_KeyboardInterrupt : PyExc_RuntimeError,
- "%s", except.message);
+ gdbpy_convert_exception (except);
return -1;
}
END_CATCH
@@ -585,9 +585,7 @@ cmdpy_init (PyObject *self, PyObject *args, PyObject *kw)
xfree (docstring);
xfree (pfx_name);
Py_DECREF (self);
- PyErr_Format (except.reason == RETURN_QUIT
- ? PyExc_KeyboardInterrupt : PyExc_RuntimeError,
- "%s", except.message);
+ gdbpy_convert_exception (except);
return -1;
}
END_CATCH
@@ -738,9 +738,7 @@ parmpy_init (PyObject *self, PyObject *args, PyObject *kwds)
{
xfree (cmd_name);
Py_DECREF (self);
- PyErr_Format (except.reason == RETURN_QUIT
- ? PyExc_KeyboardInterrupt : PyExc_RuntimeError,
- "%s", except.message);
+ gdbpy_convert_exception (except);
return -1;
}
END_CATCH
@@ -1732,9 +1732,7 @@ convert_value_from_python (PyObject *obj)
}
CATCH (except, RETURN_MASK_ALL)
{
- PyErr_Format (except.reason == RETURN_QUIT
- ? PyExc_KeyboardInterrupt : PyExc_RuntimeError,
- "%s", except.message);
+ gdbpy_convert_exception (except);
return NULL;
}
END_CATCH