about summary refs log tree commit diff stats
path: root/src/tools/box32stack.c
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2025-01-14 20:37:47 +0100
committerptitSeb <sebastien.chev@gmail.com>2025-01-14 20:38:00 +0100
commitd7007dd3ccbac2fcd4aac4b9d26806c7285e593e (patch)
tree020b9d2fefe521ce01b13c57770f252c09ee36f6 /src/tools/box32stack.c
parent9c5daf5954b2aa4305357ca5b8d47562671bc9b2 (diff)
downloadbox64-d7007dd3ccbac2fcd4aac4b9d26806c7285e593e.tar.gz
box64-d7007dd3ccbac2fcd4aac4b9d26806c7285e593e.zip
Small changes on envv and arv managment
Diffstat (limited to 'src/tools/box32stack.c')
-rw-r--r--src/tools/box32stack.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/tools/box32stack.c b/src/tools/box32stack.c
index 0fa1460e..903996c7 100644
--- a/src/tools/box32stack.c
+++ b/src/tools/box32stack.c
@@ -38,11 +38,12 @@ void SetupInitialStack32(x64emu_t *emu)
     PushString32(emu, emu->context->argv[0]);
     uintptr_t p_arg0 = from_ptr(R_ESP);
     // push envs
-    uintptr_t p_envv[emu->context->envc];
+    uintptr_t p_envv[emu->context->envc+1];
     for (int i=emu->context->envc-1; i>=0; --i) {
         PushString32(emu, emu->context->envv[i]);
         p_envv[i] = from_ptr(R_ESP);
     }
+    p_envv[emu->context->envc] = 0;
     // push args, also, free the argv[] string and point to the one in the main stack
     uintptr_t p_argv[emu->context->argc];
     for (int i=emu->context->argc-1; i>=0; --i) {