diff --git a/Core/HLE/sceKernelThread.cpp b/Core/HLE/sceKernelThread.cpp index 8b2e6c3c6f..6784bab6ce 100644 --- a/Core/HLE/sceKernelThread.cpp +++ b/Core/HLE/sceKernelThread.cpp @@ -859,7 +859,7 @@ u32 sceKernelStartThread() startThread->nt.status = THREADSTATUS_READY; u32 sp = startThread->context.r[MIPS_REG_SP]; - if (argBlockPtr) + if (argBlockPtr && argSize > 0) { startThread->context.r[MIPS_REG_A0] = argSize; startThread->context.r[MIPS_REG_A1] = sp; diff --git a/pspautotests b/pspautotests index 3024341543..e6dfb3f2c2 160000 --- a/pspautotests +++ b/pspautotests @@ -1 +1 @@ -Subproject commit 3024341543e8f6a338d793bbc8701ea55e2d5c99 +Subproject commit e6dfb3f2c2ad71475aaad2d7c6807e91b64e5ab1 diff --git a/test.py b/test.py index bf70d1a52c..c6bde8cac7 100644 --- a/test.py +++ b/test.py @@ -31,6 +31,7 @@ tests_good = [ "string/string", "gpu/callbacks/ge_callbacks", "threads/mbx/mbx", + "threads/semaphores/semaphores", "power/power", "rtc/rtc", "umd/callbacks/umd", @@ -55,7 +56,6 @@ tests_good = [ "threads/msgpipe/msgpipe", "threads/mutex/mutex", "threads/scheduling/scheduling", - "threads/semaphores/semaphores", "threads/threads/threads", "threads/vpl/vpl", "threads/vtimers/vtimers",