diff --git a/nx/source/services/sm.c b/nx/source/services/sm.c index 487abcdc..fb8f4176 100644 --- a/nx/source/services/sm.c +++ b/nx/source/services/sm.c @@ -56,8 +56,12 @@ Result smInitialize(void) return 0; Result rc = svcConnectToNamedPort(&g_smHandle, "sm:"); - Handle tmp; + while (R_VALUE(rc) == KERNELRESULT(NotFound)) { + svcSleepThread(50000000ul); + rc = svcConnectToNamedPort(&g_smHandle, "sm:"); + } + Handle tmp; if (R_SUCCEEDED(rc) && smGetServiceOriginal(&tmp, smEncodeName("")) == 0x415) { IpcCommand c; ipcInitialize(&c);