From e316ce1109c9f32255c52648fce1e3c664349128 Mon Sep 17 00:00:00 2001 From: mainzelm Date: Mon, 11 Feb 2002 17:32:20 +0000 Subject: [PATCH] + Fixed bug in set-process-group + include + save errno before starting timer interrupts --- scsh/syscalls.scm | 2 +- scsh/syscalls1.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/scsh/syscalls.scm b/scsh/syscalls.scm index cb24f73..743f31f 100644 --- a/scsh/syscalls.scm +++ b/scsh/syscalls.scm @@ -143,7 +143,7 @@ (import-os-error-syscall process-group () "scsh_getpgrp") -(import-os-error-syscall %set-process-group (pid groupid) "setpgid") +(import-os-error-syscall %set-process-group (pid groupid) "scsh_setpgid") (define (set-process-group arg1 . maybe-arg2) (receive (pid pgrp) (if (null? maybe-arg2) diff --git a/scsh/syscalls1.c b/scsh/syscalls1.c index 33c8638..3d9c872 100644 --- a/scsh/syscalls1.c +++ b/scsh/syscalls1.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include @@ -127,8 +128,8 @@ s48_value scheme_exec(s48_value prog, s48_value argv, s48_value env) } s48_stop_alarm_interrupts(); execve(s48_extract_string (prog), unix_argv, unix_env); /* Do it. */ - s48_start_alarm_interrupts(); e = errno; + s48_start_alarm_interrupts(); if( env != S48_TRUE ) { Free(unix_env); } @@ -982,7 +983,7 @@ void s48_init_syscalls (){ S48_EXPORT_FUNCTION(scsh_getpid); S48_EXPORT_FUNCTION(scsh_getppid); S48_EXPORT_FUNCTION(scsh_getpgrp); - S48_EXPORT_FUNCTION(setpgid); + S48_EXPORT_FUNCTION(scsh_setpgid); S48_EXPORT_FUNCTION(scsh_setsid); S48_EXPORT_FUNCTION(scsh_umask); S48_EXPORT_FUNCTION(process_times);