diff --git a/rpcs3/Emu/Cell/lv2/sys_ppu_thread.cpp b/rpcs3/Emu/Cell/lv2/sys_ppu_thread.cpp index cf242c1d26..63f729c453 100644 --- a/rpcs3/Emu/Cell/lv2/sys_ppu_thread.cpp +++ b/rpcs3/Emu/Cell/lv2/sys_ppu_thread.cpp @@ -329,7 +329,9 @@ error_code _sys_ppu_thread_create(vm::ptr thread_id, vm::ptr name) return CELL_EFAULT; } + constexpr u32 max_size = 27; // max size including null terminator + const auto pname = name.get_ptr(); + // thread_ctrl name is not changed (TODO) - thread->ppu_name.assign(name.get_ptr()); + thread->ppu_name.assign(pname, std::find(pname, pname + max_size, '\0')); return CELL_OK; }