X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=tests%2Ftest-sigprocmask.c;h=6aaf74dac7451cb85be0cc15f96ca0ff1ad7c395;hb=54c3ba61dfdf260865f2a6529ab414e24da17cf5;hp=973c5d88e140ad32e7652bcf1ddfa2e84590dca9;hpb=b80db060001e52a487a0502a6258156cbeea2a8a;p=gnulib.git diff --git a/tests/test-sigprocmask.c b/tests/test-sigprocmask.c index 973c5d88e..6aaf74dac 100644 --- a/tests/test-sigprocmask.c +++ b/tests/test-sigprocmask.c @@ -1,5 +1,5 @@ /* Test of sigprocmask. - Copyright (C) 2011 Free Software Foundation, Inc. + Copyright (C) 2011-2013 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -28,7 +28,6 @@ SIGNATURE_CHECK (sigprocmask, int, (int, const sigset_t *, sigset_t *)); #include #include -#include "ignore-value.h" #include "macros.h" #if !((defined _WIN32 || defined __WIN32__) && !defined __CYGWIN__) @@ -45,9 +44,15 @@ int main (int argc, char *argv[]) { sigset_t set; - int pid = getpid (); + pid_t pid = getpid (); char command[80]; + if (sizeof (int) < sizeof pid && 0x7fffffff < pid) + { + fputs ("Skipping test: pid too large\n", stderr); + return 77; + } + signal (SIGINT, sigint_handler); sigemptyset (&set); @@ -61,8 +66,8 @@ main (int argc, char *argv[]) ASSERT (sigprocmask (SIG_BLOCK, &set, NULL) == 0); /* Request a SIGINT signal from outside. */ - sprintf (command, "sh -c 'sleep 1; kill -%d %d' &", SIGINT, pid); - ignore_value (system (command)); + sprintf (command, "sh -c 'sleep 1; kill -%d %d' &", SIGINT, (int) pid); + ASSERT (system (command) == 0); /* Wait. */ sleep (2);