about summary refs log tree commit diff
path: root/linuxthreads/oldsemaphore.c
diff options
context:
space:
mode:
Diffstat (limited to 'linuxthreads/oldsemaphore.c')
-rw-r--r--linuxthreads/oldsemaphore.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/linuxthreads/oldsemaphore.c b/linuxthreads/oldsemaphore.c
index 2099b8bbda..80a82dfcf6 100644
--- a/linuxthreads/oldsemaphore.c
+++ b/linuxthreads/oldsemaphore.c
@@ -113,7 +113,8 @@ int __old_sem_wait(old_sem_t * sem)
 	while (! sem_compare_and_swap(sem, oldstatus, newstatus));
 	if (newstatus & 1) {
 	    /* We got the semaphore. */
-	  __pthread_set_own_extricate_if(self, 0);
+	    __pthread_set_own_extricate_if(self, 0);
+	    self->p_nextwaiting = NULL;
 	    return 0;
 	}
 	/* Wait for sem_post or cancellation */