;;; -*- Mode:Lisp; Readtable:T; Package:USER; Base:8; Patch-File:T -*-
;;; Patch file for System version 123.258
;;; Reason:
;;;  We computing package of buffer in ZWEI, make sure we start from the GLOBAL package root.
;;;  Previously, you could sometimes get gross strangeness due to the buffer package being
;;;  in another root unexpectedly.
;;; Written 6-May-88 11:45:17 by RG at site Gigamos Cambridge
;;; while running on Death from band 1
;;; with Experimental System 123.215, Experimental Local-File 73.3, Experimental FILE-Server 22.1, Experimental Unix-Interface 11.0, Experimental Tape 18.2, Experimental KERMIT 34.3, Experimental ZMail 71.0, Experimental Lambda-Diag 15.0, microcode 1755, SDU Boot Tape 3.13, SDU ROM 102, LOADED.



; From file DJ: L.ZWEI; ZMNEW.LISP#55 at 6-May-88 11:45:17
#8R ZWEI#: 
(COMPILER-LET ((*PACKAGE* (PKG-FIND-PACKAGE "ZWEI")))
  (COMPILER::PATCH-SOURCE-FILE "SYS: ZWEI; ZMNEW  "

(DEFUN INITIALIZE-BUFFER-PACKAGE (BUFFER)
  "Initialize the BUFFER-PACKAGE of BUFFER from its :PACKAGE attribute."
  (OR (BUFFER-PACKAGE BUFFER)
      (PKG-BIND (cond (*DEFAULT-PACKAGE*)
		      ((and *PACKAGE*
			    (null (get *package* :root)))
		       *package*)  ;preserve old (fairly random) behavior if package-root
				   ;feature not in use
		      (t si:pkg-user-package))  ;make sure we dont get a non-global-root
				;package unless the user explicitly says he wants that.
	(CONDITION-BIND ((SYS:PACKAGE-NOT-FOUND 'INITIALIZE-BUFFER-PACKAGE-HANDLER))
	  (SETF (BUFFER-PACKAGE BUFFER)
		(MULTIPLE-VALUE-BIND (VARS VALS)
		    (SEND BUFFER ':ATTRIBUTE-BINDINGS)
		  (PROGV VARS VALS *PACKAGE*)))))))

))
