From 6536cc32e203e4e72e7f161c8295e6b3b355e79c Mon Sep 17 00:00:00 2001 From: Dave Anglin Date: Wed, 6 Aug 2008 20:17:21 +0000 Subject: [PATCH] * solib-pa64.c (read_dld_descriptor): Return zero if load map is not setup. --- gdb/ChangeLog | 5 +++++ gdb/solib-pa64.c | 7 +++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 7d1cac12571..5e4b8cf047a 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2008-08-06 John David Anglin + + * solib-pa64.c (read_dld_descriptor): Return zero if load map is not + setup. + 2008-08-06 Mark Kettenis * i386obsd-nat.c (i386obsd_supply_pcb): Adjust for changes in diff --git a/gdb/solib-pa64.c b/gdb/solib-pa64.c index d5b718a2358..af04b4de818 100644 --- a/gdb/solib-pa64.c +++ b/gdb/solib-pa64.c @@ -125,8 +125,8 @@ pa64_target_read_memory (void *buffer, CORE_ADDR ptr, size_t bufsiz, int ident) This must happen after dld starts running, so we can't do it in read_dynamic_info. Record the fact that we have loaded the - descriptor. If the library is archive bound, then return zero, else - return nonzero. */ + descriptor. If the library is archive bound or the load map + hasn't been setup, then return zero; else return nonzero. */ static int read_dld_descriptor (void) @@ -161,6 +161,9 @@ read_dld_descriptor (void) error (_("Error while reading in load map pointer.")); } + if (!dld_cache.load_map) + return 0; + /* Read in the dld load module descriptor */ if (dlgetmodinfo (-1, &dld_cache.dld_desc, -- 2.30.2