diff options
author | aliaspider | 2015-09-27 14:47:06 +0100 |
---|---|---|
committer | aliaspider | 2015-09-27 14:47:06 +0100 |
commit | a93bb43bc84cbc8e81c13cf3428d9f2a501c0c8e (patch) | |
tree | 1ee10733133210219b278447fac70f4d7ab833ce /libretro.c | |
parent | cfc1a3391d765acfcc22324b77fe77d5d85a84c4 (diff) | |
download | picogpsp-a93bb43bc84cbc8e81c13cf3428d9f2a501c0c8e.tar.gz picogpsp-a93bb43bc84cbc8e81c13cf3428d9f2a501c0c8e.tar.bz2 picogpsp-a93bb43bc84cbc8e81c13cf3428d9f2a501c0c8e.zip |
(ctr/3ds) fix handle leak.
Diffstat (limited to 'libretro.c')
-rw-r--r-- | libretro.c | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -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(); } |