From 045a6bcdd2d9c5c83f01171775998ef3104eb10f Mon Sep 17 00:00:00 2001 From: Torvald Riegel Date: Tue, 29 Jul 2014 21:44:58 +0200 Subject: Fix nptl/tst-sem4: always start with a fresh semaphore. --- nptl/tst-sem4.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'nptl') diff --git a/nptl/tst-sem4.c b/nptl/tst-sem4.c index 72ed97d370..cf9ef2781e 100644 --- a/nptl/tst-sem4.c +++ b/nptl/tst-sem4.c @@ -39,6 +39,12 @@ do_test (void) pid_t pid; int val; + /* Start with a clean slate and register a clean-up action. No need to + act if sem_unlink fails because we will catch the same problem during the + sem_open below. */ + sem_unlink ("/glibc-tst-sem4"); + on_exit (remove_sem, (void *) "/glibc-tst-sem4"); + s = sem_open ("/glibc-tst-sem4", O_CREAT, 0600, 1); if (s == SEM_FAILED) { @@ -59,8 +65,6 @@ do_test (void) return 1; } - on_exit (remove_sem, (void *) "/glibc-tst-sem4"); - /* We have the semaphore object. Now try again with O_EXCL, this should fail. */ s2 = sem_open ("/glibc-tst-sem4", O_CREAT | O_EXCL, 0600, 1); -- cgit 1.4.1