Panic if any initialization fails

This commit is contained in:
plutoo 2018-01-13 00:43:38 +01:00
parent 61494b77cc
commit 844f72fe67
2 changed files with 22 additions and 6 deletions

View File

@ -36,4 +36,8 @@ enum {
LIBNX_HEAPALLOCFAILED,
LIBNX_TOOMANYOVERRIDES,
LIBNX_PARCELERROR,
LIBNX_INITFAIL_SM,
LIBNX_INITFAIL_AM,
LIBNX_INITFAIL_HID,
LIBNX_INITFAIL_FS
};

View File

@ -61,12 +61,25 @@ void __attribute__((weak)) __libnx_initheap(void)
void __attribute__((weak)) __appInit(void)
{
// Initialize default services.
smInitialize();
appletInitialize();
hidInitialize();
Result rc;
// Initialize default services.
rc = smInitialize();
if (R_FAILED(rc))
fatalSimple(MAKERESULT(MODULE_LIBNX, LIBNX_INITFAIL_SM));
rc = appletInitialize();
if (R_FAILED(rc))
fatalSimple(MAKERESULT(MODULE_LIBNX, LIBNX_INITFAIL_AM));
rc = hidInitialize();
if (R_FAILED(rc))
fatalSimple(MAKERESULT(MODULE_LIBNX, LIBNX_INITFAIL_HID));
rc = fsInitialize();
if (R_FAILED(rc))
fatalSimple(MAKERESULT(MODULE_LIBNX, LIBNX_INITFAIL_FS));
fsInitialize();
//fsdevInit();
}
@ -75,7 +88,6 @@ void __attribute__((weak)) __appExit(void)
// Cleanup default services.
//fsdevExit();
fsExit();
hidExit();
appletExit();
smExit();