From 57ebe59dfd79cb407e1ddcfa7e2fe64b62f9b683 Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Wed, 7 Apr 2010 18:30:57 +0000 Subject: [PATCH] SEM_VALUE_MAX is not POSIX. Use sysconf(_SC_SEM_VALUE_MAX) instead. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36070 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- .../posixtestsuite/conformance/interfaces/sem_open/5-1.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/tests/system/libroot/posix/posixtestsuite/conformance/interfaces/sem_open/5-1.c b/src/tests/system/libroot/posix/posixtestsuite/conformance/interfaces/sem_open/5-1.c index cb5eec791c..2d64d40eb4 100644 --- a/src/tests/system/libroot/posix/posixtestsuite/conformance/interfaces/sem_open/5-1.c +++ b/src/tests/system/libroot/posix/posixtestsuite/conformance/interfaces/sem_open/5-1.c @@ -29,14 +29,18 @@ int main() { sem_t *mysemp; char semname[50]; +#ifdef _SC_SEM_VALUE_MAX + int counter = sysconf(_SC_SEM_VALUE_MAX); +#else int counter = SEM_VALUE_MAX; +#endif if (counter >= INT_MAX) { return PTS_PASS; } - sprintf(semname, "/" FUNCTION "_" TEST "_%d", getpid()); + sprintf(semname, "/" FUNCTION "_" TEST "_%ld", (long)getpid()); ++counter; mysemp = sem_open(semname, O_CREAT, 0444, counter);