diff options
author | Tom Tromey <tromey@redhat.com> | 2009-02-03 19:20:02 +0000 |
---|---|---|
committer | Tom Tromey <tromey@redhat.com> | 2009-02-03 19:20:02 +0000 |
commit | b32d97f3d2c35e217053a0b1cf77e735fc73b7a0 (patch) | |
tree | 17c81ccccb0017f15f7f73328e4780e387b9cce7 | |
parent | 692263b89b92b2a951281900e5328d087944b16a (diff) | |
download | fsf-binutils-gdb-b32d97f3d2c35e217053a0b1cf77e735fc73b7a0.zip fsf-binutils-gdb-b32d97f3d2c35e217053a0b1cf77e735fc73b7a0.tar.gz fsf-binutils-gdb-b32d97f3d2c35e217053a0b1cf77e735fc73b7a0.tar.bz2 |
* completer.c (add_struct_fields): Check type_name against NULL
before use.
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/completer.c | 10 |
2 files changed, 12 insertions, 3 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index db38fec..0f57551 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2009-02-03 Tom Tromey <tromey@redhat.com> + + * completer.c (add_struct_fields): Check type_name against NULL + before use. + 2009-02-03 Joel Brobecker <brobecker@adacore.com> * MAINTAINERS: Update Elena's email address. diff --git a/gdb/completer.c b/gdb/completer.c index 5d7225f..298cdd0 100644 --- a/gdb/completer.c +++ b/gdb/completer.c @@ -371,6 +371,7 @@ add_struct_fields (struct type *type, int *nextp, char **output, char *fieldname, int namelen) { int i; + int computed_type_name = 0; char *type_name = NULL; CHECK_TYPEDEF (type); @@ -392,10 +393,13 @@ add_struct_fields (struct type *type, int *nextp, char **output, char *name = TYPE_FN_FIELDLIST_NAME (type, i); if (name && ! strncmp (name, fieldname, namelen)) { - if (!type_name) - type_name = type_name_no_tag (type); + if (!computed_type_name) + { + type_name = type_name_no_tag (type); + computed_type_name = 1; + } /* Omit constructors from the completion list. */ - if (strcmp (type_name, name)) + if (type_name && strcmp (type_name, name)) { output[*nextp] = xstrdup (name); ++*nextp; |