[PATCH] Ignore the first entry returned by svr4_current_sos_via_xfer_libraries for dynamically linked programs

Ben Cheng
2013-05-28T18:31:34Z

[-- Attachment #1: Type: text/plain, Size: 644 bytes --]

The first entry in the xml list returned by
svr4_current_sos_via_xfer_libraries() is the executable itself. For
dynamically linked programs, the existing code that deals with
gdbserver that doesn't support svr4_current_sos_via_xfer_libraries is
ignoring the first entry. This patch applies the same logic on the
result returned by svr4_current_sos_via_xfer_libraries().

See GDB PR/15507 for more details.

--

2013-05-28 Ben Cheng <bccheng@android.com>

PR gdb/15507:
* solib-svr4.c (svr4_current_sos): Ignore the first library list
entry returned by svr4_current_sos_via_xfer_libraries call for
dynamically linked programs.

[-- Attachment #2: diff.txt --]
[-- Type: text/plain, Size: 656 bytes --]

Index: solib-svr4.c
===================================================================
RCS file: /cvs/src/src/gdb/solib-svr4.c,v
retrieving revision 1.178
diff -r1.178 solib-svr4.c
1285c1285,1291
< return library_list.head ? library_list.head : svr4_default_sos ();
---
> /* Use the same logic that determines the 'ignore_first' variable
> below. PR - 15507 */
> if (exec_bfd && bfd_get_section_by_name (exec_bfd, ".dynamic") == NULL)
> return library_list.head ? library_list.head : svr4_default_sos ();
> else
> return library_list.head && library_list.head->next ?
> library_list.head->next : svr4_default_sos ();