diff options
author | Michael Snyder <msnyder@vmware.com> | 2002-03-19 03:51:06 +0000 |
---|---|---|
committer | Michael Snyder <msnyder@vmware.com> | 2002-03-19 03:51:06 +0000 |
commit | 75245b24192bbe28d7baa9dc96d218085c49194f (patch) | |
tree | a76e1bdf3b3b04d76e0376b173594ffe4754d8b5 /gdb/symfile.c | |
parent | 349c5d5f6c08699c3e433b28e2beaa24b65a63b0 (diff) | |
download | gdb-75245b24192bbe28d7baa9dc96d218085c49194f.zip gdb-75245b24192bbe28d7baa9dc96d218085c49194f.tar.gz gdb-75245b24192bbe28d7baa9dc96d218085c49194f.tar.bz2 |
2002-03-14 Michael Snyder <msnyder@redhat.com>
* symfile.c (syms_from_objfile): Return immediately if no syms.
(symbol_file_add): Return immediately if no syms.
(find_sym_fns): Return immediately if no syms.
Diffstat (limited to 'gdb/symfile.c')
-rw-r--r-- | gdb/symfile.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gdb/symfile.c b/gdb/symfile.c index 568b821..985d80b 100644 --- a/gdb/symfile.c +++ b/gdb/symfile.c @@ -577,6 +577,9 @@ syms_from_objfile (struct objfile *objfile, struct section_addr_info *addrs, init_entry_point_info (objfile); find_sym_fns (objfile); + if (objfile->sf == NULL) + return; /* No symbols. */ + /* Make sure that partially constructed symbol tables will be cleaned up if an error occurs during symbol reading. */ old_chain = make_cleanup_free_objfile (objfile); @@ -858,6 +861,9 @@ symbol_file_add (char *name, int from_tty, struct section_addr_info *addrs, syms_from_objfile (objfile, addrs, mainline, from_tty); } + if (objfile->sf == NULL) + return objfile; /* No symbols. */ + /* We now have at least a partial symbol table. Check to see if the user requested that all symbols be read on initial access via either the gdb startup command line or on a per symbol file basis. Expand @@ -1134,6 +1140,11 @@ find_sym_fns (struct objfile *objfile) enum bfd_flavour our_flavour = bfd_get_flavour (objfile->obfd); char *our_target = bfd_get_target (objfile->obfd); + if (our_flavour == bfd_target_srec_flavour + || our_flavour == bfd_target_ihex_flavour + || our_flavour == bfd_target_tekhex_flavour) + return; /* No symbols. */ + /* Special kludge for apollo. See dstread.c. */ if (STREQN (our_target, "apollo", 6)) our_flavour = (enum bfd_flavour) -2; |