* signals/signals.c (do_target_signal_to_host): Correct realtime

signal range test.
This commit is contained in:
Daniel Jacobowitz 2003-03-26 20:44:39 +00:00
parent 69f567ae0a
commit f541410f48
2 changed files with 14 additions and 12 deletions

View File

@ -1,3 +1,8 @@
2003-03-26 Daniel Jacobowitz <drow@mvista.com>
* signals/signals.c (do_target_signal_to_host): Correct realtime
signal range test.
2003-03-26 Daniel Jacobowitz <drow@mvista.com>
* breakpoint.c (handle_gnu_4_16_catch_command, get_catch_sals)

View File

@ -518,6 +518,8 @@ static int
do_target_signal_to_host (enum target_signal oursig,
int *oursig_ok)
{
int retsig;
*oursig_ok = 1;
switch (oursig)
{
@ -742,36 +744,31 @@ do_target_signal_to_host (enum target_signal oursig,
default:
#if defined (REALTIME_LO)
if (oursig < REALTIME_LO || oursig >= REALTIME_HI)
{
*oursig_ok = 0;
return 0;
}
retsig = 0;
if (oursig >= TARGET_SIGNAL_REALTIME_33
&& oursig <= TARGET_SIGNAL_REALTIME_63)
{
/* This block of signals is continuous, and
TARGET_SIGNAL_REALTIME_33 is 33 by definition. */
int retsig =
(int) oursig - (int) TARGET_SIGNAL_REALTIME_33 + 33;
return retsig;
retsig = (int) oursig - (int) TARGET_SIGNAL_REALTIME_33 + 33;
}
else if (oursig == TARGET_SIGNAL_REALTIME_32)
{
/* TARGET_SIGNAL_REALTIME_32 isn't contiguous with
TARGET_SIGNAL_REALTIME_33. It is 32 by definition. */
return 32;
retsig = 32;
}
else if (oursig >= TARGET_SIGNAL_REALTIME_64
&& oursig <= TARGET_SIGNAL_REALTIME_127)
{
/* This block of signals is continuous, and
TARGET_SIGNAL_REALTIME_64 is 64 by definition. */
int retsig =
(int) oursig - (int) TARGET_SIGNAL_REALTIME_64 + 64;
return retsig;
retsig = (int) oursig - (int) TARGET_SIGNAL_REALTIME_64 + 64;
}
if (retsig >= REALTIME_LO && retsig < REALTIME_HI)
return retsig;
#endif
*oursig_ok = 0;