From dce084426d75b45ef728425a880d642a604c36a7 Mon Sep 17 00:00:00 2001 From: Anton Kolesov Date: Wed, 14 Sep 2016 12:20:13 +0100 Subject: Stop the ARC disassembler from seg-faulting if initialised without a BFD present. * arc-dis.c (arc_get_disassembler): Accept a null bfd gracefully. --- opcodes/arc-dis.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'opcodes/arc-dis.c') 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; } -- cgit v1.1