From aa26bae26834e990f698bc59412d36caaaa35ae0 Mon Sep 17 00:00:00 2001 From: "Guillermo J. Rozas" Date: Sat, 13 Nov 1993 02:43:18 +0000 Subject: [PATCH] Split system out of call/cc. --- v7/src/runtime/site.scm.unix | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/v7/src/runtime/site.scm.unix b/v7/src/runtime/site.scm.unix index 5612560f4..8c0dc0bdf 100644 --- a/v7/src/runtime/site.scm.unix +++ b/v7/src/runtime/site.scm.unix @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Id: site.scm.unix,v 1.11 1993/11/13 02:21:15 gjr Exp $ +$Id: site.scm.unix,v 1.12 1993/11/13 02:43:18 gjr Exp $ Copyright (c) 1988-93 Massachusetts Institute of Technology @@ -55,19 +55,22 @@ MIT in each case. |# (loop (cdr args))))))))) (if *call/cc-warn?* (warn "call/cc: Invoking the C compiler:" command-line)) - (let ((inside (working-directory-pathname)) - (outside false)) - (dynamic-wind - (lambda () - (stop-thread-timer) - (set! outside ((ucode-primitive working-directory-pathname 0))) - ((ucode-primitive set-working-directory-pathname! 1) inside)) - (lambda () - ((ucode-primitive system) command-line)) - (lambda () - (set! inside ((ucode-primitive working-directory-pathname 0))) - ((ucode-primitive set-working-directory-pathname! 1) outside) - (start-thread-timer)))))) + (system command-line))) + +(define (system command-line) + (let ((inside (working-directory-pathname)) + (outside false)) + (dynamic-wind + (lambda () + (stop-thread-timer) + (set! outside ((ucode-primitive working-directory-pathname 0))) + ((ucode-primitive set-working-directory-pathname! 1) inside)) + (lambda () + ((ucode-primitive system) command-line)) + (lambda () + (set! inside ((ucode-primitive working-directory-pathname 0))) + ((ucode-primitive set-working-directory-pathname! 1) outside) + (start-thread-timer))))) ;;; Normalization of various directory structures. -- 2.25.1