aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/solib-svr4.c7
2 files changed, 8 insertions, 4 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 6cfb9c5..5dadb4f 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2014-02-27 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ Additional PR 8882 fix.
+ * solib-svr4.c (svr4_read_so_list): Change first to first_l_name.
+
2014-02-27 Pedro Alves <palves@redhat.com>
* nat/linux-waitpid.c (my_waitpid): Only block signals if WNOHANG
diff --git a/gdb/solib-svr4.c b/gdb/solib-svr4.c
index e2e173a..6c4dff7 100644
--- a/gdb/solib-svr4.c
+++ b/gdb/solib-svr4.c
@@ -1306,7 +1306,7 @@ static int
svr4_read_so_list (CORE_ADDR lm, CORE_ADDR prev_lm,
struct so_list ***link_ptr_ptr, int ignore_first)
{
- struct so_list *first = NULL;
+ CORE_ADDR first_l_name;
CORE_ADDR next_lm;
for (; lm != 0; prev_lm = lm, lm = next_lm)
@@ -1346,7 +1346,7 @@ svr4_read_so_list (CORE_ADDR lm, CORE_ADDR prev_lm,
{
struct svr4_info *info = get_svr4_info ();
- first = new;
+ first_l_name = new->lm_info->l_name;
info->main_lm_addr = new->lm_info->lm_addr;
do_cleanups (old_chain);
continue;
@@ -1361,8 +1361,7 @@ svr4_read_so_list (CORE_ADDR lm, CORE_ADDR prev_lm,
inferior executable, then this is not a normal shared
object, but (most likely) a vDSO. In this case, silently
skip it; otherwise emit a warning. */
- if (first == NULL
- || new->lm_info->l_name != first->lm_info->l_name)
+ if (first_l_name == 0 || new->lm_info->l_name != first_l_name)
warning (_("Can't read pathname for load map: %s."),
safe_strerror (errcode));
do_cleanups (old_chain);