diff options
Diffstat (limited to 'nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S')
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S index ca5c1423c0..06ad11c11b 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S @@ -68,11 +68,13 @@ __pthread_cond_timedwait: /* Store the reference to the mutex. If there is already a different value in there this is a bad user bug. */ -2: movl 24(%esp), %eax +2: cmpl $-1, dep_mutex(%ebx) + movl 24(%esp), %eax + je 17f movl %eax, dep_mutex(%ebx) /* Unlock the mutex. */ - xorl %edx, %edx +17: xorl %edx, %edx call __pthread_mutex_unlock_usercnt testl %eax, %eax |