From c7edd69934e7bc5d656610f8f8215d6b6437cc2c Mon Sep 17 00:00:00 2001 From: red-prig Date: Thu, 26 Jan 2023 23:09:50 +0300 Subject: [PATCH] pthread_mutex_setname_np --- kernel/ps4_libkernel.pas | 2 ++ kernel/ps4_mutex.pas | 17 +++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/kernel/ps4_libkernel.pas b/kernel/ps4_libkernel.pas index cdb25008..3057dfad 100644 --- a/kernel/ps4_libkernel.pas +++ b/kernel/ps4_libkernel.pas @@ -1148,6 +1148,8 @@ begin lib^.set_proc($228F7E9D329766D0,@ps4_pthread_mutex_timedlock); lib^.set_proc($2BF8D785BB76827E,@ps4_pthread_mutex_trylock); + lib^.set_proc($9D3C59069F183467,@ps4_pthread_mutex_setname_np); + lib^.set_proc($17C6D41F0006DBCE,@ps4_scePthreadMutexattrInit); lib^.set_proc($B2658492D8B2C86D,@ps4_scePthreadMutexattrDestroy); lib^.set_proc($82AB84841AD2DA2C,@ps4_scePthreadMutexattrGettype); diff --git a/kernel/ps4_mutex.pas b/kernel/ps4_mutex.pas index 2077dd5e..091675f9 100644 --- a/kernel/ps4_mutex.pas +++ b/kernel/ps4_mutex.pas @@ -76,6 +76,8 @@ function ps4_pthread_mutex_unlock(pMutex:p_pthread_mutex):Integer; SysV_ABI_CDec function ps4_pthread_mutex_init(pMutex:p_pthread_mutex;pAttr:p_pthread_mutex_attr):Integer; SysV_ABI_CDecl; function ps4_pthread_mutex_destroy(pMutex:p_pthread_mutex):Integer; SysV_ABI_CDecl; +function ps4_pthread_mutex_setname_np(pMutex:p_pthread_mutex;name:Pchar):Integer; SysV_ABI_CDecl; + function ps4_scePthreadMutexattrInit(pAttr:p_pthread_mutex_attr):Integer; SysV_ABI_CDecl; function ps4_scePthreadMutexattrDestroy(pAttr:p_pthread_mutex_attr):Integer; SysV_ABI_CDecl; function ps4_scePthreadMutexattrGettype(pAttr:p_pthread_mutex_attr;t:PInteger):Integer; SysV_ABI_CDecl; @@ -476,6 +478,21 @@ begin Result:=pthread_mutex_destroy(pMutex); end; +function ps4_pthread_mutex_setname_np(pMutex:p_pthread_mutex;name:Pchar):Integer; SysV_ABI_CDecl; +var + m:pthread_mutex; +begin + if (pMutex=nil) then Exit(EINVAL); + m:=pMutex^; + if (m=nil) then Exit(EINVAL); + if (name<>nil) then + begin + FillChar(m^.name,32,0); + MoveChar0(name^,m^.name,32); + end; + Result:=0; +end; + //--------------------------------------------------------- //sce