aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog15
-rw-r--r--gdb/defs.h3
-rw-r--r--gdb/infcmd.c2
-rw-r--r--gdb/jv-lang.c22
-rw-r--r--gdb/solib.c22
-rw-r--r--gdb/utils.c13
6 files changed, 17 insertions, 60 deletions
diff --git a/ChangeLog b/ChangeLog
index 4eff217..69d95cb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,20 @@
2007-10-15 Vladimir Prus <vladimir@codesourcery.com>
+ Remove 'run_cleanup'.
+ * defs.h (do_run_cleanups, make_run_cleanup): Remove
+ declarations.
+ * infcmd.c (run_command_1): Call clear_solib instead
+ of do_run_cleanups.
+ * jv-lang.c (java_rerun_cleanup): Remove, for lack of
+ any use.
+ * solib.c (solib_cleanup_queued, do_clear_solib): Remove.
+ (update_solib_lib): Don't setup run cleanup.
+ (no_shared_libraries): Call clear_solib, not do_clear_solib.
+ * utils.c (run_cleanup_chain, make_run_cleanup)
+ (do_run_cleanups): Remove.
+
+2007-10-15 Vladimir Prus <vladimir@codesourcery.com>
+
Remove CLEAR_SOLIB use.
* corelow.c (core_close): Don't check for CLEAR_SOLIB.
* infcmd.c (attach_command): Likewise.
diff --git a/gdb/defs.h b/gdb/defs.h
index 8cfc6e3..deaa528 100644
--- a/gdb/defs.h
+++ b/gdb/defs.h
@@ -347,7 +347,6 @@ extern char *safe_strerror (int);
extern void do_cleanups (struct cleanup *);
extern void do_final_cleanups (struct cleanup *);
-extern void do_run_cleanups (struct cleanup *);
extern void do_exec_cleanups (struct cleanup *);
extern void do_exec_error_cleanups (struct cleanup *);
@@ -383,8 +382,6 @@ extern struct cleanup *make_final_cleanup (make_cleanup_ftype *, void *);
extern struct cleanup *make_my_cleanup (struct cleanup **,
make_cleanup_ftype *, void *);
-extern struct cleanup *make_run_cleanup (make_cleanup_ftype *, void *);
-
extern struct cleanup *make_exec_cleanup (make_cleanup_ftype *, void *);
extern struct cleanup *make_exec_error_cleanup (make_cleanup_ftype *, void *);
diff --git a/gdb/infcmd.c b/gdb/infcmd.c
index 079d586..e8ac46a 100644
--- a/gdb/infcmd.c
+++ b/gdb/infcmd.c
@@ -482,7 +482,7 @@ run_command_1 (char *args, int from_tty, int tbreak_at_main)
/* Purge old solib objfiles. */
objfile_purge_solibs ();
- do_run_cleanups (NULL);
+ clear_solib ();
/* The comment here used to read, "The exec file is re-read every
time we do a generic_mourn_inferior, so we just have to worry
diff --git a/gdb/jv-lang.c b/gdb/jv-lang.c
index a426d61..e3c6299 100644
--- a/gdb/jv-lang.c
+++ b/gdb/jv-lang.c
@@ -1133,25 +1133,3 @@ _initialize_java_language (void)
add_language (&java_language_defn);
}
-
-/* Cleanup code that should be run on every "run".
- We should use make_run_cleanup to have this be called.
- But will that mess up values in value histry? FIXME */
-
-extern void java_rerun_cleanup (void);
-void
-java_rerun_cleanup (void)
-{
- if (class_symtab != NULL)
- {
- free_symtab (class_symtab); /* ??? */
- class_symtab = NULL;
- }
- if (dynamics_objfile != NULL)
- {
- free_objfile (dynamics_objfile);
- dynamics_objfile = NULL;
- }
-
- java_object_type = NULL;
-}
diff --git a/gdb/solib.c b/gdb/solib.c
index f687558..0ec0a51 100644
--- a/gdb/solib.c
+++ b/gdb/solib.c
@@ -86,12 +86,8 @@ struct target_so_ops *current_target_so_ops;
static struct so_list *so_list_head; /* List of known shared objects */
-static int solib_cleanup_queued = 0; /* make_run_cleanup called */
-
/* Local function prototypes */
-static void do_clear_solib (void *);
-
/* If non-empty, this is a search path for loading non-absolute shared library
symbol files. This takes precedence over the environment variables PATH
and LD_LIBRARY_PATH. */
@@ -506,15 +502,6 @@ update_solib_list (int from_tty, struct target_ops *target)
"Error reading attached process's symbol file.\n",
RETURN_MASK_ALL);
- /* Since this function might actually add some elements to the
- so_list_head list, arrange for it to be cleaned up when
- appropriate. */
- if (!solib_cleanup_queued)
- {
- make_run_cleanup (do_clear_solib, NULL);
- solib_cleanup_queued = 1;
- }
-
/* GDB and the inferior's dynamic linker each maintain their own
list of currently loaded shared objects; we want to bring the
former in sync with the latter. Scan both lists, seeing which
@@ -866,13 +853,6 @@ clear_solib (void)
ops->clear_solib ();
}
-static void
-do_clear_solib (void *dummy)
-{
- solib_cleanup_queued = 0;
- clear_solib ();
-}
-
/* GLOBAL FUNCTION
solib_create_inferior_hook -- shared library startup support
@@ -955,7 +935,7 @@ void
no_shared_libraries (char *ignored, int from_tty)
{
objfile_purge_solibs ();
- do_clear_solib (NULL);
+ clear_solib ();
}
static void
diff --git a/gdb/utils.c b/gdb/utils.c
index af2fac8..3be084e 100644
--- a/gdb/utils.c
+++ b/gdb/utils.c
@@ -96,7 +96,6 @@ static void set_width (void);
static struct cleanup *cleanup_chain; /* cleaned up after a failed command */
static struct cleanup *final_cleanup_chain; /* cleaned up when gdb exits */
-static struct cleanup *run_cleanup_chain; /* cleaned up on each 'run' */
static struct cleanup *exec_cleanup_chain; /* cleaned up on each execution command */
/* cleaned up on each error from within an execution command */
static struct cleanup *exec_error_cleanup_chain;
@@ -210,12 +209,6 @@ make_final_cleanup (make_cleanup_ftype *function, void *arg)
}
struct cleanup *
-make_run_cleanup (make_cleanup_ftype *function, void *arg)
-{
- return make_my_cleanup (&run_cleanup_chain, function, arg);
-}
-
-struct cleanup *
make_exec_cleanup (make_cleanup_ftype *function, void *arg)
{
return make_my_cleanup (&exec_cleanup_chain, function, arg);
@@ -324,12 +317,6 @@ do_final_cleanups (struct cleanup *old_chain)
}
void
-do_run_cleanups (struct cleanup *old_chain)
-{
- do_my_cleanups (&run_cleanup_chain, old_chain);
-}
-
-void
do_exec_cleanups (struct cleanup *old_chain)
{
do_my_cleanups (&exec_cleanup_chain, old_chain);