diff options
author | Tom de Vries <tdevries@suse.de> | 2024-03-09 16:13:10 +0100 |
---|---|---|
committer | Tom de Vries <tdevries@suse.de> | 2024-03-09 16:13:10 +0100 |
commit | b1abf8b1b93b5ccdcd400b925dd9046b80f0c32b (patch) | |
tree | 23e3efd83fa0aacd1bd97e2facbac214c6577aaf /gdb/python | |
parent | 5cd52661808b9fdc2df56dd4c20a9a8ece72dbc1 (diff) | |
download | gdb-b1abf8b1b93b5ccdcd400b925dd9046b80f0c32b.zip gdb-b1abf8b1b93b5ccdcd400b925dd9046b80f0c32b.tar.gz gdb-b1abf8b1b93b5ccdcd400b925dd9046b80f0c32b.tar.bz2 |
[gdb/python] Use gdbpy_err_fetch::{type,value} as getters
Similar to gdbpy_err_fetch::value, add a getter gdbpy_err_fetch::type, and use
both consistently to get gdbpy_err_fetch members m_error_value and
m_error_type.
Tested on aarch64-linux.
Diffstat (limited to 'gdb/python')
-rw-r--r-- | gdb/python/py-utils.c | 9 | ||||
-rw-r--r-- | gdb/python/python-internal.h | 12 |
2 files changed, 15 insertions, 6 deletions
diff --git a/gdb/python/py-utils.c b/gdb/python/py-utils.c index 9382eb6..3fcf48f 100644 --- a/gdb/python/py-utils.c +++ b/gdb/python/py-utils.c @@ -195,10 +195,11 @@ gdbpy_err_fetch::to_string () const Using str (aka PyObject_Str) will fetch the error message from gdb.GdbError ("message"). */ - if (m_error_value.get () != nullptr && m_error_value.get () != Py_None) - return gdbpy_obj_to_string (m_error_value.get ()); + gdbpy_ref<> value = this->value (); + if (value.get () != nullptr && value.get () != Py_None) + return gdbpy_obj_to_string (value.get ()); else - return gdbpy_obj_to_string (m_error_type.get ()); + return gdbpy_obj_to_string (this->type ().get ()); } /* See python-internal.h. */ @@ -206,7 +207,7 @@ gdbpy_err_fetch::to_string () const gdb::unique_xmalloc_ptr<char> gdbpy_err_fetch::type_to_string () const { - return gdbpy_obj_to_string (m_error_type.get ()); + return gdbpy_obj_to_string (this->type ().get ()); } /* Convert a GDB exception to the appropriate Python exception. diff --git a/gdb/python/python-internal.h b/gdb/python/python-internal.h index c68aff5..9ceb4aa 100644 --- a/gdb/python/python-internal.h +++ b/gdb/python/python-internal.h @@ -675,16 +675,24 @@ public: bool type_matches (PyObject *type) const { - return PyErr_GivenExceptionMatches (m_error_type.get (), type); + gdbpy_ref<> err_type = this->type (); + return PyErr_GivenExceptionMatches (err_type.get (), type); } /* Return a new reference to the exception value object. */ - gdbpy_ref<> value () + gdbpy_ref<> value () const { return m_error_value; } + /* Return a new reference to the exception type object. */ + + gdbpy_ref<> type () const + { + return m_error_type; + } + private: gdbpy_ref<> m_error_type, m_error_value, m_error_traceback; |