diff options
Diffstat (limited to 'gdb/python/py-unwind.c')
-rw-r--r-- | gdb/python/py-unwind.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/gdb/python/py-unwind.c b/gdb/python/py-unwind.c index ab34971..43125bb 100644 --- a/gdb/python/py-unwind.c +++ b/gdb/python/py-unwind.c @@ -287,6 +287,8 @@ pyuw_create_unwind_info (PyObject *pyo_pending_frame, unwind_info_object *unwind_info = PyObject_New (unwind_info_object, &unwind_info_object_type); + if (unwind_info == nullptr) + return nullptr; unwind_info->frame_id = frame_id; Py_INCREF (pyo_pending_frame); @@ -929,9 +931,9 @@ frame_unwind_python::sniff (const frame_info_ptr &this_frame, /* Received UnwindInfo, cache data. */ PyObject *pyo_unwind_info = PyTuple_GET_ITEM (pyo_execute_ret.get (), 0); - if (PyObject_IsInstance (pyo_unwind_info, - (PyObject *) &unwind_info_object_type) <= 0) - error (_("A Unwinder should return gdb.UnwindInfo instance.")); + if (!PyObject_TypeCheck (pyo_unwind_info, &unwind_info_object_type)) + error (_("an Unwinder should return gdb.UnwindInfo, not %s."), + Py_TYPE (pyo_unwind_info)->tp_name); { unwind_info_object *unwind_info = @@ -1029,9 +1031,7 @@ gdbpy_initialize_unwind (void) return 0; } -void _initialize_py_unwind (); -void -_initialize_py_unwind () +INIT_GDB_FILE (py_unwind) { add_setshow_boolean_cmd ("py-unwind", class_maintenance, &pyuw_debug, |