]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Merged from mainline:
authorMark Kettenis <kettenis@gnu.org>
Wed, 29 Oct 2003 18:40:39 +0000 (18:40 +0000)
committerMark Kettenis <kettenis@gnu.org>
Wed, 29 Oct 2003 18:40:39 +0000 (18:40 +0000)
2003-10-29  Mark Kettenis  <kettenis@gnu.org>

* objfiles.h (clear_objfile_data): New prototype.
* objfiles.c (clear_objfile_data): New function.
* symfile.c (reread_symbols): Clear per-objfile data.

gdb/ChangeLog
gdb/objfiles.c
gdb/objfiles.h
gdb/symfile.c

index 27ea08b763d270e5cf84ddcfb39b05a0427cfb2c..5b85063a2d8168e8c72811ba6fa5ca2cc2c1620d 100644 (file)
@@ -1,3 +1,13 @@
+2003-10-29  Mark Kettenis  <kettenis@gnu.org>
+
+       Merged from mainline:
+
+       2003-10-29  Mark Kettenis  <kettenis@gnu.org>
+       
+       * objfiles.h (clear_objfile_data): New prototype.
+       * objfiles.c (clear_objfile_data): New function.
+       * symfile.c (reread_symbols): Clear per-objfile data.
+
 2003-10-17  Jim Blandy  <jimb@redhat.com>
 
        Merged from mainline: 
index ee4cdc4032c1ddda8accd9657a13569f938de3b3..1519967b2fca253307567a0cad7ef3ec96696b6f 100644 (file)
@@ -1161,6 +1161,13 @@ objfile_free_data (struct objfile *objfile)
   objfile->data = NULL;
 }
 
+void
+clear_objfile_data (struct objfile *objfile)
+{
+  gdb_assert (objfile->data != NULL);
+  memset (objfile->data, 0, objfile->num_data * sizeof (void *));
+}
+
 void
 set_objfile_data (struct objfile *objfile, const struct objfile_data *data,
                  void *value)
index 80e61c523489bea337d9cabcb71f13c7a7405792..2d9ca29a597718212d47f0d2e2884a1ad90e095a 100644 (file)
@@ -576,6 +576,7 @@ extern int is_in_import_list (char *, struct objfile *);
    modules.  */
 
 extern const struct objfile_data *register_objfile_data (void);
+extern void clear_objfile_data (struct objfile *objfile);
 extern void set_objfile_data (struct objfile *objfile,
                              const struct objfile_data *data, void *value);
 extern void *objfile_data (struct objfile *objfile,
index 2466649628ce015503333a5df3705a4fc6375af8..b08ba21fe8cbc99ae6fabb7f640f9f47402f86da 100644 (file)
@@ -1974,6 +1974,7 @@ reread_symbols (void)
              memset (&objfile->msymbol_demangled_hash, 0,
                      sizeof (objfile->msymbol_demangled_hash));
              objfile->fundamental_types = NULL;
+             clear_objfile_data (objfile);
              if (objfile->sf != NULL)
                {
                  (*objfile->sf->sym_finish) (objfile);