diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 758a96bc15..3e454ddc08 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2003-06-27 Elena Zannoni + + * symfile.c (syms_from_objfile): Move variables to inner block. + Move the checks for the non-mainline case a bit earlier to avoid + doing some useless computations. + 2003-06-27 Elena Zannoni * dwarfread.c (decode_modified_type): Gag new compiler warning. diff --git a/gdb/symfile.c b/gdb/symfile.c index 3b7ebc26a7..839a7bc366 100644 --- a/gdb/symfile.c +++ b/gdb/symfile.c @@ -566,12 +566,8 @@ syms_from_objfile (struct objfile *objfile, int mainline, int verbo) { - asection *lower_sect; - asection *sect; - CORE_ADDR lower_offset; struct section_addr_info *local_addr = NULL; struct cleanup *old_chain; - int i; gdb_assert (! (addrs && offsets)); @@ -626,8 +622,13 @@ syms_from_objfile (struct objfile *objfile, We no longer warn if the lowest section is not a text segment (as happens for the PA64 port. */ - if (!mainline) + if (!mainline && addrs && addrs->other[0].name) { + asection *lower_sect; + asection *sect; + CORE_ADDR lower_offset; + int i; + /* Find lowest loadable section to be used as starting point for continguous sections. FIXME!! won't work without call to find .text first, but this assumes text is lowest section. */ @@ -659,9 +660,7 @@ syms_from_objfile (struct objfile *objfile, (the loadable section directly below it in memory). this_offset = lower_offset = lower_addr - lower_orig_addr */ - /* Calculate offsets for sections. */ - if (addrs) - for (i=0 ; i < addrs->num_sections && addrs->other[i].name; i++) + for (i = 0; i < addrs->num_sections && addrs->other[i].name; i++) { if (addrs->other[i].addr != 0) {