Patch by Vasilis Kaoutsis: The Open Group Base Specs for signal() require
errno to be set to a positive value on error, but since BeOS error codes are negative numbers, we can't comply. Changed the tests accordingly to check for the expected error code (EINVAL) instead. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22845 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
5450cae172
commit
def1a8a91c
@ -24,15 +24,15 @@ void myhandler(int signo)
|
||||
|
||||
int main()
|
||||
{
|
||||
errno = -1;
|
||||
errno = 0;
|
||||
|
||||
if (signal(-1, myhandler) != SIG_ERR) {
|
||||
printf("Test FAILED: signal() didn't return SIG_ERR even though invalid signal number was passed to it\n");
|
||||
return PTS_FAIL;
|
||||
}
|
||||
|
||||
if (errno <= 0) {
|
||||
printf("Test FAILED: errno wasn't set to a positive number even though invalid signal number was passed to the signal() function\n");
|
||||
if (errno != EINVAL) {
|
||||
printf("Test FAILED: errno wasn't set to EINVAL even though invalid signal number was passed to the signal() function\n");
|
||||
return PTS_FAIL;
|
||||
}
|
||||
printf("signal(): Test passed\n");
|
||||
|
@ -24,15 +24,15 @@ void myhandler(int signo)
|
||||
|
||||
int main()
|
||||
{
|
||||
errno = -1;
|
||||
errno = 0;
|
||||
|
||||
if (signal(SIGKILL, myhandler) != SIG_ERR) {
|
||||
printf("Test FAILED: signal() didn't return SIG_ERR even though a non-catchable signal was passed to it\n");
|
||||
return PTS_FAIL;
|
||||
}
|
||||
|
||||
if (errno <= 0) {
|
||||
printf("Test FAILED: errno wasn't set to a positive number even though a non-catchable signal was passed to the signal() function\n");
|
||||
if (errno != EINVAL) {
|
||||
printf("Test FAILED: errno wasn't set to EINVAL even though a non-catchable signal was passed to the signal() function\n");
|
||||
return PTS_FAIL;
|
||||
}
|
||||
printf("signal(): Test passed\n");
|
||||
|
Loading…
Reference in New Issue
Block a user