You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-08 12:40:44 +00:00
WorkerThreadPool: Fix wrong pointer used in the case of BinaryMutex
This commit is contained in:
@@ -427,7 +427,7 @@ void WorkerThreadPool::_lock_unlockable_mutexes() {
|
|||||||
if ((((uintptr_t)unlockable_mutexes[i]) & 1) == 0) {
|
if ((((uintptr_t)unlockable_mutexes[i]) & 1) == 0) {
|
||||||
((Mutex *)unlockable_mutexes[i])->lock();
|
((Mutex *)unlockable_mutexes[i])->lock();
|
||||||
} else {
|
} else {
|
||||||
((BinaryMutex *)unlockable_mutexes[i])->lock();
|
((BinaryMutex *)(unlockable_mutexes[i] & ~1))->lock();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -441,7 +441,7 @@ void WorkerThreadPool::_unlock_unlockable_mutexes() {
|
|||||||
if ((((uintptr_t)unlockable_mutexes[i]) & 1) == 0) {
|
if ((((uintptr_t)unlockable_mutexes[i]) & 1) == 0) {
|
||||||
((Mutex *)unlockable_mutexes[i])->unlock();
|
((Mutex *)unlockable_mutexes[i])->unlock();
|
||||||
} else {
|
} else {
|
||||||
((BinaryMutex *)unlockable_mutexes[i])->unlock();
|
((BinaryMutex *)(unlockable_mutexes[i] & ~1))->unlock();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user