From d7b0344091a2660ac4f29e5975a7e2f64f768327 Mon Sep 17 00:00:00 2001 From: Ofek Date: Fri, 7 Sep 2018 19:26:59 +0300 Subject: [PATCH] Fix trophy regression Hopefully Correct status order --- rpcs3/Emu/Cell/Modules/sceNpTrophy.cpp | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/rpcs3/Emu/Cell/Modules/sceNpTrophy.cpp b/rpcs3/Emu/Cell/Modules/sceNpTrophy.cpp index d942bb34ba..2f8b7a1253 100644 --- a/rpcs3/Emu/Cell/Modules/sceNpTrophy.cpp +++ b/rpcs3/Emu/Cell/Modules/sceNpTrophy.cpp @@ -315,9 +315,19 @@ error_code sceNpTrophyRegisterContext(ppu_thread& ppu, u32 context, u32 handle, // * Update (Required update) - Setup - Progress * ? - Finalize - Complete - Installed // * Installed // We will go with the easy path of Installed, and that's it. - if (statusCb(ppu, context, SCE_NP_TROPHY_STATUS_INSTALLED, 100, 100, arg) < 0) + + auto statuses = {SCE_NP_TROPHY_STATUS_NOT_INSTALLED, + SCE_NP_TROPHY_STATUS_PROCESSING_SETUP, + SCE_NP_TROPHY_STATUS_PROCESSING_PROGRESS, + SCE_NP_TROPHY_STATUS_PROCESSING_FINALIZE, + SCE_NP_TROPHY_STATUS_PROCESSING_COMPLETE}; + + for (auto status : statuses) { - return SCE_NP_TROPHY_ERROR_PROCESSING_ABORTED; + if (statusCb(ppu, context, status, 100, 100, arg) < 0) + { + return SCE_NP_TROPHY_ERROR_PROCESSING_ABORTED; + } } return CELL_OK;