From 1362a5f7bed15347b21b75b5e4ccd038d5e20f17 Mon Sep 17 00:00:00 2001 From: Chris Hanson Date: Thu, 9 May 1991 03:22:24 +0000 Subject: [PATCH] Change GET-ENVIRONMENT-VARIABLE to return #F if not found. Rename GET-USER-HOME-DIRECTORY to UNIX/USER-HOME-DIRECTORY. --- v7/src/runtime/unxprm.scm | 31 ++++++++++++++++++------------- v7/src/runtime/unxpth.scm | 8 ++++---- 2 files changed, 22 insertions(+), 17 deletions(-) diff --git a/v7/src/runtime/unxprm.scm b/v7/src/runtime/unxprm.scm index a745915e6..9a260a843 100644 --- a/v7/src/runtime/unxprm.scm +++ b/v7/src/runtime/unxprm.scm @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/unxprm.scm,v 1.11 1991/02/15 18:07:35 cph Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/unxprm.scm,v 1.12 1991/05/09 03:22:24 cph Exp $ Copyright (c) 1988-91 Massachusetts Institute of Technology @@ -94,27 +94,32 @@ MIT in each case. |# ((ucode-primitive file-mod-time-indirect 1) (pathname->string (pathname->absolute-pathname (->pathname filename))))) -(define (get-environment-variable name) - (or ((ucode-primitive get-environment-variable) name) - (error "GET-ENVIRONMENT-VARIABLE: Unbound name" name))) +(define-integrable get-environment-variable + (ucode-primitive get-environment-variable)) -(define (get-user-home-directory user-name) - (or ((ucode-primitive get-user-home-directory) user-name) - (error "User has no home directory" user-name))) +(define (unix/user-home-directory user-name) + (let ((directory (ucode-primitive get-user-home-directory))) + (if (not directory) + (error "Can't find user's home directory:" user-name)) + directory)) -(define unix/current-user-name +(define (unix/current-home-directory) + (or (get-environment-variable "HOME") + (get-user-home-directory (unix/current-user-name)))) + +(define-integrable unix/current-user-name (ucode-primitive current-user-name)) -(define unix/current-uid +(define-integrable unix/current-uid (ucode-primitive current-uid)) -(define unix/current-gid +(define-integrable unix/current-gid (ucode-primitive current-gid)) -(define unix/current-file-time +(define-integrable unix/current-file-time (ucode-primitive current-file-time)) -(define unix/file-time->string +(define-integrable unix/file-time->string (ucode-primitive file-time->string)) (define (unix/uid->string uid) @@ -125,7 +130,7 @@ MIT in each case. |# (or ((ucode-primitive gid->string) gid) (number->string gid 10))) -(define unix/system +(define-integrable unix/system (ucode-primitive system)) (define (file-touch filename) diff --git a/v7/src/runtime/unxpth.scm b/v7/src/runtime/unxpth.scm index 7279da261..e7d80374f 100644 --- a/v7/src/runtime/unxpth.scm +++ b/v7/src/runtime/unxpth.scm @@ -1,8 +1,8 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/unxpth.scm,v 14.5 1989/04/05 04:25:52 cph Rel $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/unxpth.scm,v 14.6 1991/05/09 03:22:03 cph Exp $ -Copyright (c) 1988, 1989 Massachusetts Institute of Technology +Copyright (c) 1988-91 Massachusetts Institute of Technology This material was developed by the Scheme project at the Massachusetts Institute of Technology, Department of Electrical Engineering and @@ -36,12 +36,12 @@ MIT in each case. |# ;;; package: () (declare (usual-integrations)) - + (define (symbol->pathname symbol) (string->pathname (string-downcase (symbol->string symbol)))) (define (home-directory-pathname) - (pathname-as-directory (string->pathname (get-environment-variable "HOME")))) + (pathname-as-directory (string->pathname (unix/current-home-directory)))) (define (init-file-pathname) (string->pathname ".scheme.init")) -- 2.25.1