From b63b17c54faf20b5c87bec9c5b03ed67c039c8e1 Mon Sep 17 00:00:00 2001 From: Aurora Date: Mon, 17 Oct 2016 18:27:48 +0200 Subject: [PATCH] Minor stuff --- haxloader/source/main.c | 11 +++++++---- source/patches.c | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/haxloader/source/main.c b/haxloader/source/main.c index a8de381..f21c729 100644 --- a/haxloader/source/main.c +++ b/haxloader/source/main.c @@ -37,7 +37,7 @@ void main(void) payload; bool foundPayload = false; - if(f_open(&pathFile, "/luma/path.txt", FA_READ) == FR_OK) + if(f_open(&pathFile, "luma/path.txt", FA_READ) == FR_OK) { u32 pathSize = f_size(&pathFile); @@ -74,10 +74,13 @@ void main(void) f_read(&payload, payloadAddress, payloadSize, &read); f_close(&payload); - flushDCacheRange(loaderAddress, loader_bin_size); - flushICacheRange(loaderAddress, loader_bin_size); + if((u32)read == payloadSize) + { + flushDCacheRange(loaderAddress, loader_bin_size); + flushICacheRange(loaderAddress, loader_bin_size); - ((void (*)())loaderAddress)(); + ((void (*)())loaderAddress)(); + } } } diff --git a/source/patches.c b/source/patches.c index 995e459..298f442 100644 --- a/source/patches.c +++ b/source/patches.c @@ -377,7 +377,7 @@ u32 patchSvcBreak9(u8 *pos, u32 size, u32 kernel9Address) if(arm9SvcTable == NULL) ret = 1; else { - while(*arm9SvcTable) arm9SvcTable++; //Look for SVC0 (NULL) + while(*arm9SvcTable != 0) arm9SvcTable++; //Look for SVC0 (NULL) u32 *addr = (u32 *)(pos + arm9SvcTable[0x3C] - kernel9Address); *addr = 0xE12FFF7F;