aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@efficios.com>2024-12-03 10:52:18 -0500
committerSimon Marchi <simon.marchi@polymtl.ca>2024-12-03 14:18:59 -0500
commit22a7a2d12a81a4c4521d1d9996d06b7abf315acc (patch)
tree47acf03b9a4cd222385af037e24ee709eea8721d /gdb
parentc3b15d468c106ed70954e863c595f857657bd8f2 (diff)
downloadgdb-22a7a2d12a81a4c4521d1d9996d06b7abf315acc.zip
gdb-22a7a2d12a81a4c4521d1d9996d06b7abf315acc.tar.gz
gdb-22a7a2d12a81a4c4521d1d9996d06b7abf315acc.tar.bz2
gdb: restore nullptr check in compunit_symtab::find_call_site
Commit de2b4ab50de ("Convert dwarf2_cu::call_site_htab to new hash table") removed this nullptr check for no good reason. This causes a crash if `m_call_site_htab` is not set, as shown in PR 32410. My guess is that when doing this change, I tried to make `m_call_site_htab` not a pointer, removed this check, then realized it wasn't so obvious, and forgot to re-add the check. Change-Id: I455e00cdc0519dfb412dc7826d17a839b77aae69 Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=32410 Approved-By: Tom Tromey <tom@tromey.com> Approved-By: Tom de Vries <tdevries@suse.de>
Diffstat (limited to 'gdb')
-rw-r--r--gdb/symtab.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gdb/symtab.c b/gdb/symtab.c
index edc19ff..30c22dc 100644
--- a/gdb/symtab.c
+++ b/gdb/symtab.c
@@ -396,6 +396,9 @@ linetable_entry::pc (const struct objfile *objfile) const
call_site *
compunit_symtab::find_call_site (CORE_ADDR pc) const
{
+ if (m_call_site_htab == nullptr)
+ return nullptr;
+
CORE_ADDR delta = this->objfile ()->text_section_offset ();
if (auto it = m_call_site_htab->find (static_cast<unrelocated_addr> (pc - delta));