diff options
author | Anton Kolesov <Anton.Kolesov@synopsys.com> | 2016-09-14 12:20:13 +0100 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2016-09-14 12:20:13 +0100 |
commit | dce084426d75b45ef728425a880d642a604c36a7 (patch) | |
tree | 26196485cafe17b714dc9fbfd71ba600b6c1663f /opcodes/arc-dis.c | |
parent | 29063f8bfb9d68a213efd1d0ab7a66f97ed9a013 (diff) | |
download | gdb-dce084426d75b45ef728425a880d642a604c36a7.zip gdb-dce084426d75b45ef728425a880d642a604c36a7.tar.gz gdb-dce084426d75b45ef728425a880d642a604c36a7.tar.bz2 |
Stop the ARC disassembler from seg-faulting if initialised without a BFD present.
* arc-dis.c (arc_get_disassembler): Accept a null bfd gracefully.
Diffstat (limited to 'opcodes/arc-dis.c')
-rw-r--r-- | opcodes/arc-dis.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/opcodes/arc-dis.c b/opcodes/arc-dis.c index d69a01e..ac03b8c 100644 --- a/opcodes/arc-dis.c +++ b/opcodes/arc-dis.c @@ -1238,11 +1238,16 @@ print_insn_arc (bfd_vma memaddr, disassembler_ftype arc_get_disassembler (bfd *abfd) { - /* Read the extenssion insns and registers, if any. */ - build_ARC_extmap (abfd); + /* BFD my be absent, if opcodes is invoked from the debugger that + has connected to remote target and doesn't have an ELF file. */ + if (abfd != NULL) + { + /* Read the extension insns and registers, if any. */ + build_ARC_extmap (abfd); #ifdef DEBUG - dump_ARC_extmap (); + dump_ARC_extmap (); #endif + } return print_insn_arc; } |