aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2013-05-30 17:20:02 +0000
committerTom Tromey <tromey@redhat.com>2013-05-30 17:20:02 +0000
commit1abaf0423f9c1391c193baa0f54445a1b5367ab6 (patch)
treef1f54b33fc2094111ed08b094e66147a8c52dd6c
parentedefe1dab2efc4cd0c9f3ee448a1ff3745705554 (diff)
downloadgdb-1abaf0423f9c1391c193baa0f54445a1b5367ab6.zip
gdb-1abaf0423f9c1391c193baa0f54445a1b5367ab6.tar.gz
gdb-1abaf0423f9c1391c193baa0f54445a1b5367ab6.tar.bz2
fix symtab.c
search_symbols had some bad code resulting in a cleanup being both discarded and run. * symtab.c (search_symbols): Introduce a null cleanup for 'retval_chain'.
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/symtab.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 1f07f38..5331d5b 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,10 @@
2013-05-30 Tom Tromey <tromey@redhat.com>
+ * symtab.c (search_symbols): Introduce a null cleanup for
+ 'retval_chain'.
+
+2013-05-30 Tom Tromey <tromey@redhat.com>
+
* python/py-value.c (valpy_binop): Call do_cleanups before
exiting loop.
diff --git a/gdb/symtab.c b/gdb/symtab.c
index def556b..9040035 100644
--- a/gdb/symtab.c
+++ b/gdb/symtab.c
@@ -3529,7 +3529,7 @@ search_symbols (char *regexp, enum search_domain kind,
&datum);
}
- retval_chain = old_chain;
+ retval_chain = make_cleanup (null_cleanup, NULL);
/* Here, we search through the minimal symbol tables for functions
and variables that match, and force their symbols to be read.