PR24938, Null Pointer Dereference in debug.c:debug_write_type

PR 24938
	* debug.c (debug_write_type): Call empty_type for NULL type here..
	(debug_write_type): ..rather than in just one case here.
This commit is contained in:
Alan Modra 2019-08-26 19:06:28 +09:30
parent db3b6ecc28
commit 37606e67df
2 changed files with 9 additions and 2 deletions

View file

@ -2419,6 +2419,9 @@ debug_write_type (struct debug_handle *info,
int is;
const char *tag = NULL;
if (type == DEBUG_TYPE_NULL)
return (*fns->empty_type) (fhandle);
/* If we have a name for this type, just output it. We only output
typedef names after they have been defined. We output type tags
whenever we are not actually defining them. */
@ -2481,8 +2484,6 @@ debug_write_type (struct debug_handle *info,
debug_error (_("debug_write_type: illegal type encountered"));
return FALSE;
case DEBUG_KIND_INDIRECT:
if (*type->u.kindirect->slot == DEBUG_TYPE_NULL)
return (*fns->empty_type) (fhandle);
return debug_write_type (info, fns, fhandle, *type->u.kindirect->slot,
name);
case DEBUG_KIND_VOID: