From a93bb43bc84cbc8e81c13cf3428d9f2a501c0c8e Mon Sep 17 00:00:00 2001 From: aliaspider Date: Sun, 27 Sep 2015 14:47:06 +0100 Subject: (ctr/3ds) fix handle leak. --- libretro.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libretro.c b/libretro.c index 6faae5f..6a16524 100644 --- a/libretro.c +++ b/libretro.c @@ -15,6 +15,7 @@ void linearFree(void* mem); #include "3ds/3ds_utils.h" #define MEMOP_PROT 6 int32_t svcDuplicateHandle(uint32_t* out, uint32_t original); +int32_t svcCloseHandle(uint32_t handle); int32_t svcControlProcessMemory(uint32_t process, void* addr0, void* addr1, uint32_t size, uint32_t type, uint32_t perm); int ctr_has_full_svc_access; #endif @@ -128,6 +129,7 @@ void retro_init(void) RAM_TRANSLATION_CACHE_SIZE, MEMOP_PROT, 0b111); svcControlProcessMemory(currentHandle, bios_translation_cache, 0x0, BIOS_TRANSLATION_CACHE_SIZE, MEMOP_PROT, 0b111); + svcCloseHandle(currentHandle); ctr_flush_invalidate_cache(); } -- cgit v1.2.3