2002-10-04 Michael Snyder <msnyder@redhat.com>

* m32r-stub.c (handle_exception): Make sure exception is "trap"
	before treating it as a single-step event.
This commit is contained in:
Michael Snyder
2002-10-04 22:17:36 +00:00
parent 8b0eebb0b0
commit d6020d455d
2 changed files with 18 additions and 5 deletions

View File

@ -210,8 +210,16 @@ handle_exception(int exceptionVector)
unsigned char buf[16];
int binary;
if (!finish_from_step())
return; /* "false step": let the target continue */
/* Do not call finish_from_step() if this is not a trap #1
* (breakpoint trap). Without this check, the finish_from_step()
* might interpret a system call trap as a single step trap. This
* can happen if: the stub receives 's' and exits, but an interrupt
* was pending; the interrupt is now handled and causes the stub to
* be reentered because some function makes a system call.
*/
if (exceptionVector == 1) /* Trap exception? */
if (!finish_from_step()) /* Go see if stepping state needs update. */
return; /* "false step": let the target continue */
gdb_m32r_vector = exceptionVector;