[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[no subject]



In System 78.34, ZMail 38.5, microcode 836, 60.45hz, on Lisp Machine Twenty:

(DEFUN LOGIN (USER-NAME &OPTIONAL (HOST ASSOCIATED-MACHINE) (LOAD-INIT-FILE-P T))
  ;; Do this so LOGIN init list has the correct enviroment.
  (DECLARE (SPECIAL USER-ID HOST LOAD-INIT-FILE-P))
  (LET ((WIN-P NIL))
    (UNWIND-PROTECT
      (PROGN
	.
	.
	(AND LOAD-INIT-FILE-P
	     (LOAD (FS:INIT-FILE-PATHNAME "LISPM" HOST T) "USER" T T))
	(SETQ WIN-P T))
      (IF (NOT WIN-P)
          (LOGOUT))))
  T)

Because the (SETQ WIN-P T) comes after the (LOAD ..) a user who's init
file generates an error (or one of the files the init file loads) can't
type an [Abort] out of that load without getting logged out.

If the reson for having the (SETQ ..) after the load is to make sure
that the host is up, then perhaps there should be something like a probe
before the (SETQ ..).

Unless there is some reason I don't understand for having the
UNWIND-PROTECT with (LOGOUT) maybe it should be flushed altogether. A
small sample of users find it to be an annoying misfeature.