aboutsummaryrefslogtreecommitdiff
path: root/gdb/corelow.c
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2014-01-13 09:30:30 -0700
committerTom Tromey <tromey@redhat.com>2014-02-19 07:48:41 -0700
commit2117c711ae07700adb57ea5b5ca61e4c32d7e3d2 (patch)
tree11d83657fb461542a058900c25dd225088c0dc25 /gdb/corelow.c
parente88ef65ce5f5ec33931c71c2c7a1f490b90ddd44 (diff)
downloadfsf-binutils-gdb-2117c711ae07700adb57ea5b5ca61e4c32d7e3d2.zip
fsf-binutils-gdb-2117c711ae07700adb57ea5b5ca61e4c32d7e3d2.tar.gz
fsf-binutils-gdb-2117c711ae07700adb57ea5b5ca61e4c32d7e3d2.tar.bz2
change delegation for to_read_description
This switches to_read_description to the "new normal" delegation scheme. This one was a bit trickier than the other changes due to the way that target_read_description handled delegation. I examined all the target implementations of to_read_description and changed the ones returning NULL to instead delegate. 2014-02-19 Tom Tromey <tromey@redhat.com> * arm-linux-nat.c (arm_linux_read_description): Delegate when needed. * corelow.c (core_read_description): Delegate when needed. * remote.c (remote_read_description): Delegate when needed. * target-delegates.c: Rebuild. * target.c (target_read_description): Rewrite. * target.h (struct target_ops) <to_read_description>: Update comment. Use TARGET_DEFAULT_RETURN.
Diffstat (limited to 'gdb/corelow.c')
-rw-r--r--gdb/corelow.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/gdb/corelow.c b/gdb/corelow.c
index 8a80be3..05c3e4e 100644
--- a/gdb/corelow.c
+++ b/gdb/corelow.c
@@ -913,10 +913,16 @@ static const struct target_desc *
core_read_description (struct target_ops *target)
{
if (core_gdbarch && gdbarch_core_read_description_p (core_gdbarch))
- return gdbarch_core_read_description (core_gdbarch,
- target, core_bfd);
+ {
+ const struct target_desc *result;
+
+ result = gdbarch_core_read_description (core_gdbarch,
+ target, core_bfd);
+ if (result != NULL)
+ return result;
+ }
- return NULL;
+ return target->beneath->to_read_description (target->beneath);
}
static char *