diff --git a/src/core/hle/libraries/libkernel/thread_management.cpp b/src/core/hle/libraries/libkernel/thread_management.cpp index 3930c66b..cdb2ec14 100644 --- a/src/core/hle/libraries/libkernel/thread_management.cpp +++ b/src/core/hle/libraries/libkernel/thread_management.cpp @@ -123,6 +123,17 @@ int PS4_SYSV_ABI scePthreadAttrSetschedpolicy(ScePthreadAttr* attr, int policy) /**** * Mutex calls */ +void* createMutex(void* addr) { + if (addr == nullptr || *static_cast(addr) != nullptr) { + return addr; + } + auto vaddr = reinterpret_cast(addr); + + std::string name = fmt::format("mutex{:#x}", vaddr); + scePthreadMutexInit(static_cast(addr), nullptr, name.c_str()); + return addr; +} + int PS4_SYSV_ABI scePthreadMutexInit(ScePthreadMutex* mutex, const ScePthreadMutexattr* attr, const char* name) { PRINT_FUNCTION_NAME(); if (mutex == nullptr) { @@ -154,17 +165,6 @@ int PS4_SYSV_ABI scePthreadMutexInit(ScePthreadMutex* mutex, const ScePthreadMut } } -void* createMutex(void* addr) { - if (addr == nullptr || *static_cast(addr) != nullptr) { - return addr; - } - auto vaddr = reinterpret_cast(addr); - - std::string name = fmt::format("mutex{:#}", vaddr); - scePthreadMutexInit(static_cast(addr), nullptr, name.c_str()); - return addr; -} - int PS4_SYSV_ABI scePthreadMutexattrInit(ScePthreadMutexattr* attr) { *attr = new PthreadMutexattrInternal{};