X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Kernel%2Fbinary.c;h=5213bf2d50cd203a4e44df153509f478f74e4d75;hb=30c11f371da98d13344e8bed3766d3e574a65ac9;hp=b776fed0227b6105e4fdd119cd7d41c8b960735d;hpb=675118a5a3e81149709179b4f52281d52092b233;p=tpg%2Facess2.git diff --git a/Kernel/binary.c b/Kernel/binary.c index b776fed0..5213bf2d 100644 --- a/Kernel/binary.c +++ b/Kernel/binary.c @@ -178,7 +178,7 @@ int Proc_SysSpawn(const char *Binary, const char **ArgV, const char **EnvP, int // --- Save File, ArgV and EnvP size = Binary_int_CacheArgs( &Binary, &ArgV, &EnvP, NULL ); - cachebuf = alloca( size ); + cachebuf = malloc( size ); Binary_int_CacheArgs( &Binary, &ArgV, &EnvP, cachebuf ); // Cache the VFS handles @@ -190,6 +190,7 @@ int Proc_SysSpawn(const char *Binary, const char **ArgV, const char **EnvP, int { VFS_RestoreHandles(nFD, handles); VFS_FreeSavedHandles(nFD, handles); + // Frees cachebuf Proc_Execve(Binary, ArgV, EnvP, size); for(;;); }