Skip to content

Commit 0826d47

Browse files
authored
Fix bug in internal func _tryLock in OpenBSDImpl.swift (#84619)
`pthread_mutex_trylock` return `0` on success. ``` NAME pthread_mutex_trylock – attempt to lock a mutex without blocking SYNOPSIS #include <pthread.h> int pthread_mutex_trylock(pthread_mutex_t *mutex); DESCRIPTION The pthread_mutex_trylock() function locks mutex. If the mutex is already locked, pthread_mutex_trylock() will not block waiting for the mutex, but will return an error condition. RETURN VALUES If successful, pthread_mutex_trylock() will return zero, otherwise an error number will be returned to indicate the error. ERRORS The pthread_mutex_trylock() function will fail if: [EINVAL] The value specified by mutex is invalid. [EBUSY] Mutex is already locked. ```
1 parent 2887334 commit 0826d47

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

stdlib/public/Synchronization/Mutex/OpenBSDImpl.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ public struct _MutexHandle: ~Copyable {
3939
@_alwaysEmitIntoClient
4040
@_transparent
4141
internal borrowing func _tryLock() -> Bool {
42-
pthread_mutex_trylock(value._address) != 0
42+
pthread_mutex_trylock(value._address) == 0
4343
}
4444

4545
@available(SwiftStdlib 6.0, *)

0 commit comments

Comments
 (0)