Explorar el Código

Correct computation of operatingsystem_parameter_envp, which wrongly pointed to the NIL pointer separating argv from environment variables

git-svn-id: trunk@47552 -
pierre hace 4 años
padre
commit
233d883731

+ 1 - 1
rtl/linux/riscv64/si_c.inc

@@ -39,7 +39,7 @@ procedure _FPC_rv_enter(at_exit: TProcedure; sp: pptruint);
     initialstkptr:=sp;
     operatingsystem_parameter_argc:=argc;
     operatingsystem_parameter_argv:=argv;
-    operatingsystem_parameter_envp:=@sp[1+argc];
+    operatingsystem_parameter_envp:=@sp[argc+2];
 
     libc_start_main(@PascalMain, argc, argv, libc_init_proc, libc_fini_proc, at_exit, sp);
   end;

+ 1 - 1
rtl/linux/riscv64/si_prc.inc

@@ -31,7 +31,7 @@ procedure _FPC_rv_enter(sp: pptruint);
     initialstkptr:=sp;
     operatingsystem_parameter_argc:=argc;
     operatingsystem_parameter_argv:=@sp[1];
-    operatingsystem_parameter_envp:=@sp[1+argc];
+    operatingsystem_parameter_envp:=@sp[argc+2];
 
     PascalMain;
   end;

+ 1 - 1
rtl/linux/xtensa/si_c.inc

@@ -39,7 +39,7 @@ procedure _FPC_xtensa_enter(at_exit: TProcedure; sp: pptruint);
     initialstkptr:=sp;
     operatingsystem_parameter_argc:=argc;
     operatingsystem_parameter_argv:=argv;
-    operatingsystem_parameter_envp:=@sp[1+argc];
+    operatingsystem_parameter_envp:=@sp[argc+2];
 
     libc_start_main(@PascalMain, argc, argv, libc_init_proc, libc_fini_proc, at_exit, sp);
   end;

+ 1 - 1
rtl/linux/xtensa/si_prc.inc

@@ -31,7 +31,7 @@ procedure _FPC_xtensa_enter(sp: pptruint);
     initialstkptr:=sp;
     operatingsystem_parameter_argc:=argc;
     operatingsystem_parameter_argv:=@sp[1];
-    operatingsystem_parameter_envp:=@sp[1+argc];
+    operatingsystem_parameter_envp:=@sp[argc+2];
 
     PascalMain;
   end;