* dwarfread.c (read_func_scope): Avoid GDB core dumps if

AT_name tag is missing.

	* procfs.c (procfs_stopped_by_watchpoint):  Fix logic when
	FLTWATCH and FLTKWATCH are defined.

	* remote.c (remote_read_bytes):  Advance memaddr for transfers,
	return number of bytes transferred for partial reads.

	* top.c (init_signals):  Reset SIGTRAP to SIG_DFL.
This commit is contained in:
Peter Schauer
1996-02-03 11:32:34 +00:00
parent c2b6884b97
commit 255181a9ed
4 changed files with 37 additions and 3 deletions

View File

@ -170,6 +170,11 @@ struct complaint not_row_major =
"DIE @ 0x%x \"%s\", array not row major; not handled correctly", 0, 0
};
struct complaint missing_at_name =
{
"DIE @ 0x%x, AT_name tag missing", 0, 0
};
typedef unsigned int DIE_REF; /* Reference to a DIE */
#ifndef GCC_PRODUCER
@ -1807,6 +1812,16 @@ read_func_scope (dip, thisdie, enddie, objfile)
{
register struct context_stack *new;
/* AT_name is absent if the function is described with an
AT_abstract_origin tag.
Ignore the function description for now to avoid GDB core dumps.
FIXME: Add code to handle AT_abstract_origin tags properly. */
if (dip -> at_name == NULL)
{
complain (&missing_at_name, DIE_ID);
return;
}
if (objfile -> ei.entry_point >= dip -> at_low_pc &&
objfile -> ei.entry_point < dip -> at_high_pc)
{