diff --git a/server/source/noexs/exefs.nsp b/server/source/noexs/exefs.nsp index 33af5e1..4bc262b 100644 Binary files a/server/source/noexs/exefs.nsp and b/server/source/noexs/exefs.nsp differ diff --git a/server/source/noexs/include/gecko.h b/server/source/noexs/include/gecko.h index f93a098..40bd98b 100644 --- a/server/source/noexs/include/gecko.h +++ b/server/source/noexs/include/gecko.h @@ -12,7 +12,7 @@ #define VER_MAJOR (1) #define VER_MINOR (1) -#define VER_PATCH (141) +#define VER_PATCH (142) #define GECKO_BUFFER_SIZE (2048 * 32) #define GECKO_BUFFER_SIZE2 (2048 * 4) diff --git a/server/source/noexs/noexs.nso b/server/source/noexs/noexs.nso index d1d5c83..9d9feb7 100644 Binary files a/server/source/noexs/noexs.nso and b/server/source/noexs/noexs.nso differ diff --git a/server/source/noexs/noexs.nsp b/server/source/noexs/noexs.nsp index 9e468d0..4bc262b 100644 Binary files a/server/source/noexs/noexs.nsp and b/server/source/noexs/noexs.nsp differ diff --git a/server/source/noexs/source/commands.cpp b/server/source/noexs/source/commands.cpp index 526cd0d..1091a72 100644 --- a/server/source/noexs/source/commands.cpp +++ b/server/source/noexs/source/commands.cpp @@ -485,7 +485,7 @@ static Result process(Gecko::Context &ctx, u64 m_start, u64 m_end) { // WRITE_CHECKED(ctx, count); WRITE_BUFFER_CHECKED(ctx, outbuffer, count); - READ_CHECKED(ctx,cont); if (!cont) {WRITE_CHECKED(ctx, 0); return USER_ABORT;} + READ_CHECKED(ctx,cont); if (!cont) {WRITE_CHECKED(ctx, 0);READ_CHECKED(ctx, cont); return USER_ABORT;} out_index = 0; } } @@ -508,9 +508,11 @@ static Result process(Gecko::Context &ctx, u64 m_start, u64 m_end) { // WRITE_CHECKED(ctx, count); WRITE_BUFFER_CHECKED(ctx, outbuffer, count); + READ_CHECKED(ctx, cont); out_index = 0; } WRITE_CHECKED(ctx, 0); + READ_CHECKED(ctx, cont); return rc; } @@ -611,11 +613,7 @@ static Result processlocal(Gecko::Context &ctx, u64 m_start, u64 m_end, u64 m_va // WRITE_CHECKED(ctx, count); WRITE_BUFFER_CHECKED(ctx, outbuffer, count); - READ_CHECKED(ctx, cont); - if (!cont) { - WRITE_CHECKED(ctx, 0); - return USER_ABORT; - } + READ_CHECKED(ctx,cont); if (!cont) {WRITE_CHECKED(ctx, 0);READ_CHECKED(ctx, cont); return USER_ABORT;} out_index = 0; } } @@ -638,9 +636,11 @@ static Result processlocal(Gecko::Context &ctx, u64 m_start, u64 m_end, u64 m_va // WRITE_CHECKED(ctx, count); WRITE_BUFFER_CHECKED(ctx, outbuffer, count); + READ_CHECKED(ctx, cont); out_index = 0; } WRITE_CHECKED(ctx, 0); + READ_CHECKED(ctx, cont); return rc; } @@ -717,11 +717,12 @@ static Result _getbookmark(Gecko::Context& ctx){ printf("count = %d\n", count); WRITE_CHECKED(ctx, count); WRITE_BUFFER_CHECKED(ctx, outbuffer, count); - READ_CHECKED(ctx,cont); if (!cont) {WRITE_CHECKED(ctx, 0);fclose(g_memdumpFile); return USER_ABORT;} + READ_CHECKED(ctx,cont); if (!cont) {WRITE_CHECKED(ctx, 0);READ_CHECKED(ctx, cont);fclose(g_memdumpFile); return USER_ABORT;} index += len; size -= len; } WRITE_CHECKED(ctx, 0); + READ_CHECKED(ctx, cont); fclose(g_memdumpFile); return 0; }