summaryrefslogtreecommitdiff
path: root/gdb/gnu-v3-abi.c
diff options
context:
space:
mode:
authorPer Bothner <per@bothner.com>2002-01-20 00:09:59 +0000
committerPer Bothner <per@bothner.com>2002-01-20 00:09:59 +0000
commitf1514bd0ec65d9f81a3b061fe7449eaea9751813 (patch)
treeee670cd6887f8c2165803536f50b73279c27282e /gdb/gnu-v3-abi.c
parent0186a2a134a86bb07130ff512fb6fadb0ad622f9 (diff)
downloadgdb-f1514bd0ec65d9f81a3b061fe7449eaea9751813.tar.gz
* gnu-v3-abi.c (gnuv3_rtti_type): Guard that vtable_symbol_name
isn't NULL, which can happen with some gcj-3.x-produced code.
Diffstat (limited to 'gdb/gnu-v3-abi.c')
-rw-r--r--gdb/gnu-v3-abi.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gdb/gnu-v3-abi.c b/gdb/gnu-v3-abi.c
index 93bc9950ee8..a4c79605000 100644
--- a/gdb/gnu-v3-abi.c
+++ b/gdb/gnu-v3-abi.c
@@ -239,7 +239,8 @@ gnuv3_rtti_type (struct value *value,
type_info object itself to get the class name. But this way
should work just as well, and doesn't read target memory. */
vtable_symbol_name = SYMBOL_DEMANGLED_NAME (vtable_symbol);
- if (strncmp (vtable_symbol_name, "vtable for ", 11))
+ if (vtable_symbol_name == NULL
+ || strncmp (vtable_symbol_name, "vtable for ", 11))
error ("can't find linker symbol for virtual table for `%s' value",
TYPE_NAME (value_type));
class_name = vtable_symbol_name + 11;