summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libiberty/ChangeLog4
-rw-r--r--libiberty/cp-demangle.c6
2 files changed, 10 insertions, 0 deletions
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog
index c1ef6d12ecf..aee3cc76f57 100644
--- a/libiberty/ChangeLog
+++ b/libiberty/ChangeLog
@@ -1,3 +1,7 @@
+2007-07-31 Michael Snyder <msnyder@access-company.com>
+
+ * cp-demangle.c (d_print_comp): Guard against null.
+
2007-07-25 Ben Elliston <bje@au.ibm.com>
* Makefile.in (CFILES): Remove ternary.c.
diff --git a/libiberty/cp-demangle.c b/libiberty/cp-demangle.c
index 992b3580bf7..e4869f029dd 100644
--- a/libiberty/cp-demangle.c
+++ b/libiberty/cp-demangle.c
@@ -2912,6 +2912,12 @@ d_print_comp (struct d_print_info *dpi,
typed_name = d_left (typed_name);
}
+ if (typed_name == NULL)
+ {
+ d_print_error (dpi);
+ return;
+ }
+
/* If typed_name is a template, then it applies to the
function type as well. */
if (typed_name->type == DEMANGLE_COMPONENT_TEMPLATE)