diff --git a/libctru/source/services/apt.c b/libctru/source/services/apt.c index 62c8c08..36ab4c4 100644 --- a/libctru/source/services/apt.c +++ b/libctru/source/services/apt.c @@ -495,7 +495,7 @@ Result aptInit(void) } aptOpenSession(); - if(R_FAILED(ret=APT_NotifyToWait(currentAppId)))return ret; + if(R_FAILED(ret=APT_NotifyToWait(currentAppId)))goto _fail; aptCloseSession(); // create APT event handler thread diff --git a/libctru/source/services/cam.c b/libctru/source/services/cam.c index 2439bb0..1382e28 100644 --- a/libctru/source/services/cam.c +++ b/libctru/source/services/cam.c @@ -22,7 +22,7 @@ Result camInit(void) { } if (R_FAILED(ret)) AtomicDecrement(&camRefCount); - return 0; + return ret; } void camExit(void) { diff --git a/libctru/source/services/csnd.c b/libctru/source/services/csnd.c index 5a1ffa9..69d07b7 100644 --- a/libctru/source/services/csnd.c +++ b/libctru/source/services/csnd.c @@ -152,7 +152,7 @@ Result csndInit(void) memset((void*)csndSharedMem, 0, csndSharedMemSize); ret = CSND_AcquireSoundChannels(&csndChannels); - if (R_FAILED(ret)) return 0; + if (R_SUCCEEDED(ret)) return 0; cleanup2: svcCloseHandle(csndSharedMemBlock);