Explorar o código

Kernel.Start corrected

Alexander Shiryaev %!s(int64=12) %!d(string=hai) anos
pai
achega
a6c2603dc5

BIN=BIN
BlackBox/Linux/Lin/Mod/Kernel.odc


+ 3 - 0
BlackBox/Linux/Lin/Mod/Kernel.txt

@@ -1608,7 +1608,10 @@ MODULE Kernel;
 	PROCEDURE Start* (code: Command);
 	BEGIN
 		restart := code;
+(*
 		S.GETREG(SP, baseStack);	(* save base stack *)
+*)
+		res := Libc.sigsetjmp(loopContext, Libc.TRUE);
 		code()
 	END Start;
 

BIN=BIN
BlackBox/Linux/libBB.so


BIN=BIN
BlackBox/Linux/libBB0.so


BIN=BIN
BlackBox/OpenBSD/Lin/Mod/Kernel.odc


+ 3 - 0
BlackBox/OpenBSD/Lin/Mod/Kernel.txt

@@ -1603,7 +1603,10 @@ MODULE Kernel;
 	PROCEDURE Start* (code: Command);
 	BEGIN
 		restart := code;
+(*
 		S.GETREG(SP, baseStack);	(* save base stack *)
+*)
+		res := Libc.sigsetjmp(loopContext, Libc.TRUE);
 		code()
 	END Start;
 

BIN=BIN
BlackBox/OpenBSD/libBB.so


BIN=BIN
BlackBox/OpenBSD/libBB0.so