#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/dosprm.scm,v 1.8 1992/05/31 06:15:39 mhwu Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/dosprm.scm,v 1.9 1992/07/07 00:44:27 jinx Exp $
Copyright (c) 1992 Massachusetts Institute of Technology
(lambda () (if (file-exists? name)
(delete-file name))))))))
(find-eligible-directory (cdr eligible-directories)))))))
-
\f
(define (file-attributes-direct filename)
((ucode-primitive file-attributes)
(define file-modification-time
file-modification-time-indirect)
\f
-
(define get-environment-variable)
(define set-environment-variable!)
(define delete-environment-variable!)
(set! environment-variables
(cons (cons variable value)
environment-variables)))))
- (error "SET-ENVIRONMENT-VARIABLE: Variable must be a string"
+ (error "SET-ENVIRONMENT-VARIABLE!: Variable must be a string"
variable value))
unspecific))
(set! delete-environment-variable!
(set! reset-environment-variables!
(lambda () (set! environment-variables '())))
) ; End LET
-
+\f
(define (dos/user-home-directory user-name)
(let ((directory ((ucode-primitive get-user-home-directory) user-name)))
(if (not directory)
(ucode-primitive file-time->string))
(define (file-touch filename)
- ((ucode-primitive file-touch) (->namestring (merge-pathnames filename))))
+ ((ucode-primitive file-touch)
+ (->namestring (merge-pathnames filename))))
(define (make-directory name)
- ((ucode-primitive directory-make)
- (->namestring (pathname-as-directory (merge-pathnames name)))))
-
+ ;; No pathname-as-directory here because DOS does not know how
+ ;; to handle the trailing back-slash.
+ ((ucode-primitive directory-make 1)
+ (->namestring (merge-pathnames name))))
+
+(define (delete-directory name)
+ ;; No pathname-as-directory here because DOS does not know how
+ ;; to handle the trailing back-slash.
+ ((ucode-primitive directory-delete 1)
+ (->namestring (merge-pathnames name))))
\f
;;; Queues after-restart daemon to clean up environment space
(define (initialize-system-primitives!)
- (add-event-receiver! event:after-restart reset-environment-variables!))
-
+ (add-event-receiver! event:after-restart reset-environment-variables!))
\ No newline at end of file