1
0
mirror of synced 2026-02-26 17:13:17 +00:00

Fix MEDLEYDIR when NOERROR specified to not error and return correct path (#721)

This commit is contained in:
Larry Masinter
2022-03-05 15:10:01 -08:00
committed by GitHub
parent 7bde19453e
commit ef24b9815d
2 changed files with 30 additions and 25 deletions

View File

@@ -1,10 +1,10 @@
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
(FILECREATED "18-Feb-2022 12:46:00" {DSK}<home>larry>medley>sources>MEDLEYDIR.;2 6060
(FILECREATED " 5-Mar-2022 12:43:54" {DSK}<home>larry>medley>sources>MEDLEYDIR.;2 6280
:CHANGES-TO (VARS MEDLEY-INIT-VARS)
:CHANGES-TO (FNS MEDLEYDIR)
:PREVIOUS-DATE "13-Feb-2022 15:20:26" {DSK}<home>larry>medley>sources>MEDLEYDIR.;1)
:PREVIOUS-DATE "18-Feb-2022 12:46:00" {DSK}<home>larry>medley>sources>MEDLEYDIR.;1)
(PRETTYCOMPRINT MEDLEYDIRCOMS)
@@ -62,33 +62,38 @@
NIL])
(MEDLEYDIR
[LAMBDA (DIRNAME FILENAME OUTPUT NOERROR) (* ;
 "Edited 2-Dec-2021 20:23 by kaplan")
[LAMBDA (DIRNAME FILENAME OUTPUT NOERROR) (* ; "Edited 5-Mar-2022 12:43 by larry")
(* ; "Edited 2-Dec-2021 20:23 by kaplan")
(DECLARE (GLOBALVARS MEDLEYDIR))
(DECLARE (GLOBALVARS MEDLEYDIR))
(if (NULL DIRNAME)
then (if (OR (NOT (BOUNDP 'MEDLEYDIR))
(NOT MEDLEYDIR))
then (OR (SETQ MEDLEYDIR (DIRECTORYNAME (OR (UNIX-GETENV "MEDLEYDIR")
T)))
(DIRECTORYNAME T))
elseif (STRPOS "/" MEDLEYDIR)
then (SETQ MEDLEYDIR (DIRECTORYNAME MEDLEYDIR))
else MEDLEYDIR)
(NOT MEDLEYDIR))
then (OR (SETQ MEDLEYDIR (DIRECTORYNAME (OR (UNIX-GETENV "MEDLEYDIR")
T)))
(DIRECTORYNAME T))
elseif (STRPOS "/" MEDLEYDIR)
then (SETQ MEDLEYDIR (DIRECTORYNAME MEDLEYDIR))
else MEDLEYDIR)
elseif (LISTP DIRNAME)
then (for X Y in DIRNAME when (SETQ Y (MEDLEYDIR X FILENAME OUTPUT
NOERROR)) collect Y)
then (for X Y in DIRNAME when (SETQ Y (MEDLEYDIR X FILENAME OUTPUT NOERROR)) collect Y)
elseif FILENAME
then (SETQ FILENAME (CONCAT (MEDLEYDIR DIRNAME)
FILENAME))
(if OUTPUT
then FILENAME
else (OR NOERROR (INFILEP FILENAME)
(ERROR "No such medley file" FILENAME)))
then [if (NULL (SETQ DIRNAME (MEDLEYDIR DIRNAME NIL OUTPUT NOERROR)))
then (OR NOERROR (SHOULDNT))
NIL
else (SETQ FILENAME (CONCAT DIRNAME FILENAME))
(if OUTPUT
then FILENAME
else (OR (INFILEP FILENAME)
(if NOERROR
then NIL
else (ERROR "No such medley file" FILENAME]
else (OR (DIRECTORYNAME (CONCAT (MEDLEYDIR)
DIRNAME ">"))
(if NOERROR
then NIL
else (ERROR "No such medley directory" DIRNAME])
DIRNAME ">")
NIL OUTPUT)
(if NOERROR
then NIL
else (ERROR "No such medley directory" DIRNAME])
)
(RPAQ? MEDLEYDIR )
@@ -125,5 +130,5 @@
(ADDTOVAR GLOBALVARS MEDLEYDIR MEDLEY-INIT-VARS)
)
(DECLARE%: DONTCOPY
(FILEMAP (NIL (1383 4565 (MEDLEY-INIT-VARS 1393 . 3007) (MEDLEYDIR 3009 . 4563)))))
(FILEMAP (NIL (1375 4785 (MEDLEY-INIT-VARS 1385 . 2999) (MEDLEYDIR 3001 . 4783)))))
STOP

Binary file not shown.