nn_swkbd: Fix potential memory leaks.

This commit is contained in:
James Benton
2022-01-10 14:08:55 +00:00
committed by fincs
parent 250039e932
commit e11ded4992

View File

@@ -189,7 +189,15 @@ Create(const CreateArg &args)
out:
if (!result) {
MEMDestroyExpHeap(sHeapHandle);
if (sModuleHandle) {
OSDynLoad_Release(sModuleHandle);
sModuleHandle = NULL;
}
if (sHeapHandle) {
MEMDestroyExpHeap(sHeapHandle);
sHeapHandle = NULL;
}
}
OSDynLoad_SetAllocator(prevDynLoadAlloc, prevDynLoadFree);
@@ -247,9 +255,17 @@ ConfirmUnfixAll()
void
Destroy()
{
return reinterpret_cast<decltype(&Rpl::SwkbdDestroy)>
(sDestroy)
();
reinterpret_cast<decltype(&Rpl::SwkbdDestroy)>(sDestroy)();
if (sModuleHandle) {
OSDynLoad_Release(sModuleHandle);
sModuleHandle = NULL;
}
if (sHeapHandle) {
MEMDestroyExpHeap(sHeapHandle);
sHeapHandle = NULL;
}
}
bool