From xemacs-m  Tue Mar 25 11:14:27 1997
Received: from sonne.darmstadt.gmd.de (sonne.darmstadt.gmd.de [141.12.62.20])
	by xemacs.org (8.8.5/8.8.5) with ESMTP id LAA04476
	for <xemacs-beta@xemacs.org>; Tue, 25 Mar 1997 11:14:26 -0600 (CST)
From: rol@darmstadt.gmd.de
Received: from rieke_isdn.darmstadt.gmd.de.darmstadt.gmd.de (rol@rieke_isdn [141.12.156.7]) by sonne.darmstadt.gmd.de (8.8.5/8.8.2) with SMTP id SAA20420 for <xemacs-beta@xemacs.org>; Tue, 25 Mar 1997 18:13:54 +0100 (MET)
Date: Tue, 25 Mar 1997 18:13:54 +0100 (MET)
Message-Id: <199703251713.SAA20420@sonne.darmstadt.gmd.de>
To: xemacs-beta@xemacs.org
Subject: efs-write-region endless recursion

Hallo,
I have a problem with vm trying to execute
efs-write-region on my INBOX that happens to be remote.
efs-write-region seems to recurse endless.

I've made a patch that solves my problem but may cause
other problems. So please don't blindly apply this 
but someone familiar with efs might look at the code.

Roland

diff -u efs.el.org efs.el
--- efs.el.org	Tue Mar 25 18:03:36 1997
+++ efs.el	Tue Mar 25 17:51:34 1997
@@ -7350,7 +7350,7 @@
 			    ;; But in Emacs 18, doing it this way allows
 			    ;; us to modify the visited file modtime, so
 			    ;; that undo's show the buffer modified.
-			    (apply 'write-region start end
+			    (apply 'efs-real-write-region start end
 				   temp nil visit args))
 			;; buffer-modified-p is now correctly set
 			(setq buffer-file-name b-file-name)
@@ -7395,7 +7395,7 @@
 	  (and abbr (efs-message "Wrote %s" abbr)))
       (if (and (stringp visit) (efs-ftp-path visit))
 	  (progn
-	    (apply 'write-region start end filename append visit args)
+	    (apply 'efs-real-write-region start end filename append visit args)
 	    (efs-set-buffer-file-name visit)
 	    (efs-set-visited-file-modtime)
 	    (efs-set-buffer-mode))
@@ -10785,6 +10785,7 @@
 ;; A patch to do this has been written by Jay Adams <jka@ece.cmu.edu>.
 (efs-overwrite-fn "efs" 'load)
 (efs-overwrite-fn "efs" 'require)
+(efs-overwrite-fn "efs" 'write-region)
 
 ;;;; ------------------------------------------------------------
 ;;;; Install the file handlers for efs-file-handler-function.
@@ -10792,7 +10793,7 @@
 
 ;; I/O
 (put 'insert-file-contents 'efs 'efs-insert-file-contents)
-(put 'write-region 'efs 'efs-write-region)
+;(put 'write-region 'efs 'efs-write-region)
 (put 'directory-files 'efs 'efs-directory-files)
 (put 'list-directory 'efs 'efs-list-directory)
 (put 'insert-directory 'efs 'efs-insert-directory)

