diff --git a/kernel/ps4_libkernel.pas b/kernel/ps4_libkernel.pas index 7096aa81..5098b34e 100644 --- a/kernel/ps4_libkernel.pas +++ b/kernel/ps4_libkernel.pas @@ -1256,6 +1256,8 @@ begin lib^.set_proc($108FF9FE396AD9D1,@ps4_scePthreadGetthreadid); lib^.set_proc($1E8C3B07C39EB7A9,@ps4_scePthreadGetname); + + lib^.set_proc($F6FC8FE99EDBAB37,@ps4_pthread_rename_np); lib^.set_proc($181518EF2C1D50B1,@ps4_scePthreadRename); lib^.set_proc($6EDDC24C12A61B22,@ps4_scePthreadSetaffinity); diff --git a/kernel/ps4_pthread.pas b/kernel/ps4_pthread.pas index 3ab51c21..08fd0c87 100644 --- a/kernel/ps4_pthread.pas +++ b/kernel/ps4_pthread.pas @@ -65,6 +65,8 @@ function ps4_getpid():Integer; SysV_ABI_CDecl; function ps4_scePthreadGetthreadid():Integer; SysV_ABI_CDecl; function ps4_scePthreadGetname(_pthread:pthread;name:Pchar):Integer; SysV_ABI_CDecl; + +function ps4_pthread_rename_np(_pthread:pthread;name:Pchar):Integer; SysV_ABI_CDecl; function ps4_scePthreadRename(_pthread:pthread;name:Pchar):Integer; SysV_ABI_CDecl; function ps4_scePthreadSetaffinity(_pthread:pthread;mask:QWORD):Integer; SysV_ABI_CDecl; @@ -785,13 +787,18 @@ begin Result:=0; end; -function ps4_scePthreadRename(_pthread:pthread;name:Pchar):Integer; SysV_ABI_CDecl; +function ps4_pthread_rename_np(_pthread:pthread;name:Pchar):Integer; SysV_ABI_CDecl; begin - if (_pthread=nil) or (name=nil) then Exit(SCE_KERNEL_ERROR_EINVAL); + if (_pthread=nil) or (name=nil) then Exit(EINVAL); MoveChar0(name^,_pthread^.name,32); Result:=0; end; +function ps4_scePthreadRename(_pthread:pthread;name:Pchar):Integer; SysV_ABI_CDecl; +begin + Result:=px2sce(ps4_pthread_rename_np(_pthread,name)); +end; + function ps4_scePthreadSetaffinity(_pthread:pthread;mask:QWORD):Integer; SysV_ABI_CDecl; begin if (_pthread=nil) then Exit(SCE_KERNEL_ERROR_ESRCH);