about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2024-10-30 16:33:14 +0100
committerptitSeb <sebastien.chev@gmail.com>2024-10-30 16:33:14 +0100
commite8f97967526effd8b8c034c0975452d80c0e5c65 (patch)
tree8647bbe70a3c52475cef752ac697597eb49048f3 /src
parentadb423d96b3a90b973a53388dba4c163dde2f8db (diff)
downloadbox64-e8f97967526effd8b8c034c0975452d80c0e5c65.tar.gz
box64-e8f97967526effd8b8c034c0975452d80c0e5c65.zip
Fixed a small memory invalid read with my_execv
Diffstat (limited to 'src')
-rw-r--r--src/wrapped/wrappedlibc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/wrapped/wrappedlibc.c b/src/wrapped/wrappedlibc.c
index 8c9be048..8ca4c5b9 100644
--- a/src/wrapped/wrappedlibc.c
+++ b/src/wrapped/wrappedlibc.c
@@ -2240,7 +2240,7 @@ EXPORT int32_t my_execv(x64emu_t* emu, const char* path, char* const argv[])
         const char** newargv = (const char**)box_calloc(n+toadd+2, sizeof(char*));
         newargv[0] = x86?emu->context->box86path:emu->context->box64path;
         if(script) newargv[1] = emu->context->bashpath; // script needs to be launched with bash
-        memcpy(newargv+toadd, argv+skip_first, sizeof(char*)*(n+toadd));
+        memcpy(newargv+toadd, argv+skip_first, sizeof(char*)*(n+1-skip_first));
         if(self)
             newargv[1] = emu->context->fullpath;
         else {