;;; -*- Mode: Common-Lisp; Package: zwei; Base: 8.; Patch-File: T -*-

;;; Reason: Binded *print-level* and *print-length* to nil in  COM-SAVE-MAIL-FILE. [10584]

;;;                           RESTRICTED RIGHTS LEGEND
;;;
;;; Use, duplication, or disclosure by the Government is subject to
;;; restrictions as set forth in subdivision (c)(1)(ii) of the Rights in
;;; Technical Data and Computer Software clause at 52.227-7013.
;;;
;;;   TEXAS INSTRUMENTS INCORPORATED      
;;;   P.O. BOX 2909, M/S 2151             
;;;   AUSTIN, TEXAS 78769                 
;;;
;;; Copyright (C) 1989 Texas Instruments Incorporated.
;;; All rights reserved.

;;; Patch file for MAIL-READER version 6.6
;;; Written 11/13/89 10:27:39 by BERGER,
;;; while running on ARIES from band LODX
;;; With SYSTEM 6.23, VIRTUAL-MEMORY 6.2, EH 6.5, MAKE-SYSTEM 6.2, MICRONET 6.0, LOCAL-FILE 6.1,
;;;  BASIC-PATHNAME 6.2, NETWORK-SUPPORT-COLD 6.2, BASIC-NAMESPACE 6.6, NETWORK-NAMESPACE 6.0,
;;;  DISK-IO 6.1, DISK-LABEL 6.0, BASIC-FILE 6.5, MAC-PATHNAME 6.0, NETWORK-PATHNAME 6.0,
;;;  COMPILER 6.14, TV 6.18, DATALINK 6.0, CHAOSNET 6.1, GC 6.3, MEMORY-AUX 6.0, NVRAM 6.2,
;;;  SYSLOG 6.2, STREAMER-TAPE 6.4, UCL 6.0, INPUT-EDITOR 6.0, METER 6.1, ZWEI 6.8,
;;;  DEBUG-TOOLS 6.3, NETWORK-SUPPORT 6.0, NETWORK-SERVICE 6.2, DATALINK-DISPLAYS 6.0,
;;;  FONT-EDITOR 6.1, SERIAL 6.0, PRINTER 6.3, MAC-PRINTER-TYPES 6.1, PRINTER-TYPES 6.2,
;;;  IMAGEN 6.1, SUGGESTIONS 6.1, MAIL-DAEMON 6.3, MAIL-READER 6.5, TELNET 6.0, VT100 6.0,
;;;  NAMESPACE-EDITOR 6.4, PROFILE 6.2, VISIDOC 6.5, TI-CLOS 6.26, CLEH 6.5, IP 3.55,
;;;  Experimental CLX 6.6, CLUE 6.27, X11M 6.15, Experimental BUG 11.15, DECNET 1.70,
;;;  RPC 6.2, NFS 3.9,  microcode 429, Band Name: rel6.0 10/23

#!C
; From file COMMAND.LISP#> MAIL-READER; SYS:
#10R ZWEI#:
(COMPILER-LET ((*PACKAGE* (FIND-PACKAGE "ZWEI"))
                          (SI:*LISP-MODE* :COMMON-LISP)
                          (*READTABLE* SYS:COMMON-LISP-READTABLE)
                          (SI:*READER-SYMBOL-SUBSTITUTIONS* SYS::*COMMON-LISP-SYMBOL-SUBSTITUTIONS*))
  (COMPILER#:PATCH-SOURCE-FILE "SYS: MAIL-READER; COMMAND.#"


(defcom COM-SAVE-MAIL-FILE
	"Save the mail file buffer to disk.  With any prefix arg, perform the save in background."
	()
  (in-mail-context (:require-buffer t)
    (let ((file-buffer (current-mail-file-buffer))
	  		(*print-level* nil) (*print-length* nil)
			(*PRINT-STRUCTURE* T)  ; DAB 11-13-89 Otherwise, may lose keywords

			)
      (cond ((and (not (symbolp (buffer-file-id file-buffer)))
		  (not (buffer-needs-saving-p file-buffer)))
	     (format *query-io* "~&(No changes need to be written.)")
	     (values dis-none dis-none))
	    (t
;	     (if *numeric-arg-p* 
;		 (maybe-save-mail-buffer-in-background (mail-file-buffer-of *mail-buffer*) :always)
;	       (write-mail-file-buffer nil file-buffer))
	     ;;  Just do save-buffer, which will end up calling write-mail-file-buffer anyway.
	     ;;  This way, we always go through the same function, which also checks file-ids.
	     (save-buffer file-buffer)
	     (values dis-none dis-none))))))
))
