diff options
author | Daniel Jacobowitz <dan@debian.org> | 2002-07-10 17:18:16 +0000 |
---|---|---|
committer | Daniel Jacobowitz <dan@debian.org> | 2002-07-10 17:18:16 +0000 |
commit | c14abffb81b1e9400803c4ab08cdea2a4e8ca234 (patch) | |
tree | 34eaed9b34f80becc1a3b1ea46fe9cf8dd856510 | |
parent | b3f2b968aa458b4bd5b88652628693409e96f4b0 (diff) | |
download | gdb-c14abffb81b1e9400803c4ab08cdea2a4e8ca234.tar.gz |
2002-07-10 Daniel Jacobowitz <drow@mvista.com>
* valops.c (find_overload_match): Free oload_syms.
-rw-r--r-- | gdb/ChangeLog | 4 | ||||
-rw-r--r-- | gdb/valops.c | 5 |
2 files changed, 9 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 904f9348c4d..da434f38a6e 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2002-07-10 Daniel Jacobowitz <drow@mvista.com> + + * valops.c (find_overload_match): Free oload_syms. + 2002-07-09 Joel Brobecker <brobecker@gnat.com> Define HAVE_SYS_PROC_H if sys/proc.h exists diff --git a/gdb/valops.c b/gdb/valops.c index df42e097bd3..e4c1db423a9 100644 --- a/gdb/valops.c +++ b/gdb/valops.c @@ -2707,6 +2707,7 @@ find_overload_match (struct type **arg_types, int nargs, char *name, int method, register int jj; register int ix; int static_offset; + struct cleanup *cleanups = NULL; char *obj_type_name = NULL; char *func_name = NULL; @@ -2748,6 +2749,7 @@ find_overload_match (struct type **arg_types, int nargs, char *name, int method, } oload_syms = make_symbol_overload_list (fsym); + cleanups = make_cleanup (xfree, oload_syms); while (oload_syms[++i]) num_fns++; if (!num_fns) @@ -2904,6 +2906,9 @@ find_overload_match (struct type **arg_types, int nargs, char *name, int method, } *objp = temp; } + if (cleanups != NULL) + do_cleanups (cleanups); + return oload_incompatible ? 100 : (oload_non_standard ? 10 : 0); } |