Index: lisp/tramp-smb.el =================================================================== RCS file: /sources/tramp/tramp/lisp/tramp-smb.el,v retrieving revision 2.126.2.1 diff -c -r2.126.2.1 tramp-smb.el *** lisp/tramp-smb.el 24 Jan 2011 10:09:41 -0000 2.126.2.1 --- lisp/tramp-smb.el 25 Apr 2011 17:34:24 -0000 *************** *** 1328,1334 **** ;; Play login scenario. (tramp-process-actions ! p vec (if share tramp-smb-actions-with-share tramp-smb-actions-without-share)) --- 1328,1334 ---- ;; Play login scenario. (tramp-process-actions ! p vec nil (if share tramp-smb-actions-with-share tramp-smb-actions-without-share)) Index: lisp/tramp.el =================================================================== RCS file: /sources/tramp/tramp/lisp/tramp.el,v retrieving revision 2.814.2.13 diff -c -r2.814.2.13 tramp.el *** lisp/tramp.el 12 Mar 2011 12:47:47 -0000 2.814.2.13 --- lisp/tramp.el 25 Apr 2011 17:34:39 -0000 *************** *** 4098,4104 **** (tramp-message v 6 "%s" (mapconcat 'identity (process-command p) " ")) (tramp-set-process-query-on-exit-flag p nil) ! (tramp-process-actions p v tramp-actions-copy-out-of-band)))) ;; Reset the transfer process properties. (tramp-set-connection-property v "process-name" nil) --- 4098,4105 ---- (tramp-message v 6 "%s" (mapconcat 'identity (process-command p) " ")) (tramp-set-process-query-on-exit-flag p nil) ! (tramp-process-actions ! p v nil tramp-actions-copy-out-of-band)))) ;; Reset the transfer process properties. (tramp-set-connection-property v "process-name" nil) *************** *** 6821,6828 **** (setq found (funcall action proc vec))))) found)) ! (defun tramp-process-actions (proc vec actions &optional timeout) ! "Perform actions until success or TIMEOUT." ;; Preserve message for `progress-reporter'. (with-temp-message "" ;; Enable auth-source and password-cache. --- 6822,6832 ---- (setq found (funcall action proc vec))))) found)) ! (defun tramp-process-actions (proc vec pos actions &optional timeout) ! "Perform ACTIONS until success or TIMEOUT. ! PROC and VEC indicate the remote connection to be used. POS, if ! set, is the starting point of the region to be deleted in the ! connection buffer." ;; Preserve message for `progress-reporter'. (with-temp-message "" ;; Enable auth-source and password-cache. *************** *** 6847,6853 **** (cond ((eq exit 'permission-denied) "Permission denied") ((eq exit 'process-died) "Process died") ! (t "Login failed")))))))) ;; Utility functions. --- 6851,6860 ---- (cond ((eq exit 'permission-denied) "Permission denied") ((eq exit 'process-died) "Process died") ! (t "Login failed")))) ! (when (numberp pos) ! (with-current-buffer (tramp-get-connection-buffer vec) ! (let (buffer-read-only) (delete-region pos (point))))))))) ;; Utility functions. *************** *** 7523,7529 **** (catch 'uname-changed (let ((p (tramp-get-connection-process vec)) (process-name (tramp-get-connection-property vec "process-name" nil)) ! (process-environment (copy-sequence process-environment))) ;; If too much time has passed since last command was sent, look ;; whether process is still alive. If it isn't, kill it. When --- 7530,7537 ---- (catch 'uname-changed (let ((p (tramp-get-connection-process vec)) (process-name (tramp-get-connection-property vec "process-name" nil)) ! (process-environment (copy-sequence process-environment)) ! (pos (with-current-buffer (tramp-get-connection-buffer vec) (point)))) ;; If too much time has passed since last command was sent, look ;; whether process is still alive. If it isn't, kill it. When *************** *** 7677,7683 **** ;; Send the command. (tramp-message vec 3 "Sending command `%s'" command) (tramp-send-command vec command t t) ! (tramp-process-actions p vec tramp-actions-before-shell 60) (tramp-message vec 3 "Found remote shell prompt on `%s'" l-host)) ;; Next hop. --- 7685,7691 ---- ;; Send the command. (tramp-message vec 3 "Sending command `%s'" command) (tramp-send-command vec command t t) ! (tramp-process-actions p vec pos tramp-actions-before-shell 60) (tramp-message vec 3 "Found remote shell prompt on `%s'" l-host)) ;; Next hop.