mirror of
https://github.com/SirHumza/orbisRPC.git
synced 2026-10-06 10:00:36 +02:00
installer: load dialog sysmodules before use (fixes boot panic)
This commit is contained in:
1 parent
bbdc7d8238
commit
fef0a578f6
5 files changed
+18
-1
No files matched your search
Binary file not shown.
@@ -162,6 +162,7 @@ static void step_tweaks(void){
|
||||
int main(void){
|
||||
char tok[160];
|
||||
int first_run;
|
||||
if(ui_init() != 0) return 1; /* no dialogs possible; exit, don't crash */
|
||||
tok[0] = 0;
|
||||
icfg_token_load(ICFG_PATH, tok, sizeof tok);
|
||||
first_run = !token_valid(tok);
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@
|
||||
<volume>
|
||||
<volume_type>pkg_ps4_app</volume_type>
|
||||
<volume_id>PS4VOLUME</volume_id>
|
||||
<volume_ts>2026-09-24 16:49:26</volume_ts>
|
||||
<volume_ts>2026-09-24 16:59:07</volume_ts>
|
||||
<package content_id="IV0000-ORPC00001_00-ORBISRPCSETUP000" passcode="00000000000000000000000000000000"
|
||||
storage_type="digital50" app_type="full" />
|
||||
<chunk_info chunk_count="1" scenario_count="1">
|
||||
|
||||
@@ -21,6 +21,17 @@ static void base_init(OrbisMsgDialogParam *param){
|
||||
param->mode = ORBIS_MSG_DIALOG_MODE_USER_MSG;
|
||||
}
|
||||
|
||||
static int ui_ready = 0;
|
||||
|
||||
int ui_init(void){
|
||||
if(ui_ready) return 0;
|
||||
if(sceSysmoduleLoadModule(ORBIS_SYSMODULE_MESSAGE_DIALOG) < 0) return -1;
|
||||
if(sceSysmoduleLoadModule(ORBIS_SYSMODULE_IME_DIALOG) < 0) return -1;
|
||||
if(sceCommonDialogInitialize() < 0) return -1;
|
||||
ui_ready = 1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
int ui_ok(const char *msg){
|
||||
OrbisMsgDialogParam param;
|
||||
OrbisMsgDialogUserMessageParam um;
|
||||
|
||||
@@ -3,6 +3,11 @@
|
||||
#define INSTALLER_UI_H
|
||||
#include <stddef.h>
|
||||
|
||||
/* Must run once before any dialog: loads MsgDialog/ImeDialog sysmodules
|
||||
* and inits CommonDialog. Calling dialogs without this panics the box
|
||||
* (unloaded-sysmodule call at startup). 0 ok, -1 fatal. */
|
||||
int ui_init(void);
|
||||
|
||||
/* Info dialog with OK. 0 shown, -1 failed to open. */
|
||||
int ui_ok(const char *msg);
|
||||
/* Yes/No dialog, focus on No (safe default). 1 yes, 0 no/closed, -1 error. */
|
||||
|
||||
Reference in new issue
Block a user