]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Fix segfault when creating builtin types
authorLuis Machado <luis.machado@linaro.org>
Wed, 15 Dec 2021 15:18:35 +0000 (12:18 -0300)
committerLuis Machado <luis.machado@linaro.org>
Mon, 20 Dec 2021 13:54:49 +0000 (10:54 -0300)
Sanity check the existence of a type field before dereferencing it.

gdb/gdbtypes.c

index 06f42a101d5a707ebd3ba008117be7d49bb54de5..b83cfb800b261084e8330a59f8fdd5c92892d7e2 100644 (file)
@@ -5732,8 +5732,9 @@ append_composite_type_field_raw (struct type *t, const char *name,
   f[0].set_type (field);
   FIELD_NAME (f[0]) = name;
 
-  if (field->contains_capability ()
-      || field->code () == TYPE_CODE_CAPABILITY)
+  if (field != nullptr
+      && (field->contains_capability ()
+         || field->code () == TYPE_CODE_CAPABILITY))
     t->set_contains_capability (true);
 
   return f;