diff --git a/Ghidra/Debug/Debugger-agent-gdb/src/main/py/src/ghidragdb/util.py b/Ghidra/Debug/Debugger-agent-gdb/src/main/py/src/ghidragdb/util.py index a1496caf23..0e7ec2df8d 100644 --- a/Ghidra/Debug/Debugger-agent-gdb/src/main/py/src/ghidragdb/util.py +++ b/Ghidra/Debug/Debugger-agent-gdb/src/main/py/src/ghidragdb/util.py @@ -65,7 +65,10 @@ class Index: self.regions[r.start] = r self.bases.append(r.start) def compute_base(self, address): - floor = self.bases[bisect.bisect_right(self.bases, address) - 1] + index = bisect.bisect_right(self.bases, address) - 1 + if index == -1: + return address + floor = self.bases[index] if floor == None: return address else: @@ -223,7 +226,10 @@ class RegionInfoReader(object): def get_regions(self): regions = [] - out = gdb.execute(self.cmd, to_string=True) + try: + out = gdb.execute(self.cmd, to_string=True) + except: + return regions for line in out.split('\n'): r = self.region_from_line(line) if r is None: