aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2013-05-30 17:30:03 +0000
committerTom Tromey <tromey@redhat.com>2013-05-30 17:30:03 +0000
commitf3300387104722cbfcfc955bdacb474c7f33ba9e (patch)
tree3f393ef58f81481da206005d7471b2a46cf1b44d /gdb
parentc27e16e3f1dcf904e09c4d725bc6dbde7e9ef172 (diff)
downloadgdb-f3300387104722cbfcfc955bdacb474c7f33ba9e.zip
gdb-f3300387104722cbfcfc955bdacb474c7f33ba9e.tar.gz
gdb-f3300387104722cbfcfc955bdacb474c7f33ba9e.tar.bz2
use explicit returns to avoid checker confusion
The checker does not understand the idiom if (except.reason < 0) { do_cleanups (whatever); GDB_PY_HANDLE_EXCEPTION (except); } because it doesn't realize that the nested 'if' actually has the same condition. This fixes instances of this to be more explicit. * python/py-breakpoint.c (bppy_get_commands): Use explicit, unconditional return. * python/py-frame.c (frapy_read_var): Likewise. * python/python.c (gdbpy_decode_line): Likewise.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog7
-rw-r--r--gdb/python/py-breakpoint.c3
-rw-r--r--gdb/python/py-frame.c3
-rw-r--r--gdb/python/python.c3
4 files changed, 13 insertions, 3 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 55df48c..666868f 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,12 @@
2013-05-30 Tom Tromey <tromey@redhat.com>
+ * python/py-breakpoint.c (bppy_get_commands): Use
+ explicit, unconditional return.
+ * python/py-frame.c (frapy_read_var): Likewise.
+ * python/python.c (gdbpy_decode_line): Likewise.
+
+2013-05-30 Tom Tromey <tromey@redhat.com>
+
* cp-namespace.c (cp_lookup_symbol_imports_or_template): Call
do_cleanups on all return paths.
diff --git a/gdb/python/py-breakpoint.c b/gdb/python/py-breakpoint.c
index eaa1bc5..87f1fdc 100644
--- a/gdb/python/py-breakpoint.c
+++ b/gdb/python/py-breakpoint.c
@@ -492,7 +492,8 @@ bppy_get_commands (PyObject *self, void *closure)
if (except.reason < 0)
{
do_cleanups (chain);
- GDB_PY_HANDLE_EXCEPTION (except);
+ gdbpy_convert_exception (except);
+ return NULL;
}
cmdstr = ui_file_xstrdup (string_file, &length);
diff --git a/gdb/python/py-frame.c b/gdb/python/py-frame.c
index 2615ddf..f960b08 100644
--- a/gdb/python/py-frame.c
+++ b/gdb/python/py-frame.c
@@ -477,7 +477,8 @@ frapy_read_var (PyObject *self, PyObject *args)
if (except.reason < 0)
{
do_cleanups (cleanup);
- GDB_PY_HANDLE_EXCEPTION (except);
+ gdbpy_convert_exception (except);
+ return NULL;
}
if (!var)
diff --git a/gdb/python/python.c b/gdb/python/python.c
index 690534f..c94198e 100644
--- a/gdb/python/python.c
+++ b/gdb/python/python.c
@@ -653,7 +653,8 @@ gdbpy_decode_line (PyObject *self, PyObject *args)
{
do_cleanups (cleanups);
/* We know this will always throw. */
- GDB_PY_HANDLE_EXCEPTION (except);
+ gdbpy_convert_exception (except);
+ return NULL;
}
if (sals.nelts)