[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] emacs/lisp/net tramp-smb.el
From: |
Michael Albinus |
Subject: |
[Emacs-diffs] emacs/lisp/net tramp-smb.el |
Date: |
Mon, 05 Jan 2009 19:40:01 +0000 |
CVSROOT: /sources/emacs
Module name: emacs
Changes by: Michael Albinus <albinus> 09/01/05 19:40:01
Modified files:
lisp/net : tramp-smb.el
Log message:
* net/tramp-smb.el (tramp-smb-handle-copy-file)
(tramp-smb-handle-rename-file, tramp-smb-handle-write-region):
Delete temporary file in case of error.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/net/tramp-smb.el?cvsroot=emacs&r1=1.45&r2=1.46
Patches:
Index: tramp-smb.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/net/tramp-smb.el,v
retrieving revision 1.45
retrieving revision 1.46
diff -u -b -r1.45 -r1.46
--- tramp-smb.el 3 Jan 2009 14:59:12 -0000 1.45
+++ tramp-smb.el 5 Jan 2009 19:40:00 -0000 1.46
@@ -216,7 +216,10 @@
(if tmpfile
;; Remote filename.
+ (condition-case err
(rename-file tmpfile newname ok-if-already-exists)
+ (error (delete-file tmpfile)
+ (signal (car err) (cdr err))))
;; Remote newname.
(when (file-directory-p newname)
@@ -548,10 +551,13 @@
(let ((tmpfile (file-local-copy filename)))
(if tmpfile
- ;; remote filename
+ ;; Remote filename.
+ (condition-case err
(rename-file tmpfile newname ok-if-already-exists)
+ (error (delete-file tmpfile)
+ (signal (car err) (cdr err))))
- ;; remote newname
+ ;; Remote newname.
(when (file-directory-p newname)
(setq newname (expand-file-name
(file-name-nondirectory filename) newname)))
@@ -618,12 +624,13 @@
(list start end tmpfile append 'no-message lockname)))
(tramp-message v 5 "Writing tmp file %s to file %s..." tmpfile filename)
+ (unwind-protect
(if (tramp-smb-send-command v (format "put %s \"%s\"" tmpfile file))
(tramp-message
v 5 "Writing tmp file %s to file %s...done" tmpfile filename)
(tramp-error v 'file-error "Cannot write `%s'" filename))
+ (delete-file tmpfile))
- (delete-file tmpfile)
(unless (equal curbuf (current-buffer))
(tramp-error
v 'file-error