* net/tramp-smb.el (tramp-smb-maybe-open-connection): Set
authorMichael Albinus <michael.albinus@gmx.de>
Tue, 23 Oct 2012 14:26:30 +0000 (16:26 +0200)
committerMichael Albinus <michael.albinus@gmx.de>
Tue, 23 Oct 2012 14:26:30 +0000 (16:26 +0200)
`tramp-chunksize' to 1.  This improves the performance.
(tramp-smb-wait-for-output): Add timeout to
`tramp-accept-process-output' calls.

lisp/ChangeLog
lisp/net/tramp-smb.el

index 7670e9c..39c6b96 100644 (file)
@@ -1,3 +1,10 @@
+2012-10-23  Michael Albinus  <michael.albinus@gmx.de>
+
+       * net/tramp-smb.el (tramp-smb-maybe-open-connection): Set
+       `tramp-chunksize' to 1.  This improves the performance.
+       (tramp-smb-wait-for-output): Add timeout to
+       `tramp-accept-process-output' calls.
+
 2012-10-23  Chong Yidong  <cyd@gnu.org>
 
        * faces.el (font-list-limit): Define as an obsolete variable.
index 567f8f2..f521299 100644 (file)
@@ -1677,11 +1677,11 @@ If ARGUMENT is non-nil, use it as argument for
                          (tramp-set-connection-property
                           vec "smbserver-version" smbserver-version))))
 
-                   ;; Set chunksize.  Otherwise, `tramp-send-string' might
-                   ;; try it itself.
+                   ;; Set chunksize to 1.  smbclient reads its input
+                   ;; character by character; if we send the string
+                   ;; at once, it is read painfully slow.
                    (tramp-set-connection-property p "smb-share" share)
-                   (tramp-set-connection-property
-                    p "chunksize" tramp-chunksize))
+                   (tramp-set-connection-property p "chunksize" 1))
 
                ;; Check for the error reason.  If it was due to wrong
                ;; password, reestablish the connection.  We cannot
@@ -1717,7 +1717,7 @@ Returns nil if an error message has appeared."
       (while (and (not found) (not err) (memq (process-status p) '(run open)))
 
        ;; Accept pending output.
-       (tramp-accept-process-output p)
+       (tramp-accept-process-output p 0.1)
 
        ;; Search for prompt.
        (goto-char (point-min))
@@ -1731,7 +1731,7 @@ Returns nil if an error message has appeared."
       (while (and (not found) (memq (process-status p) '(run open)))
 
        ;; Accept pending output.
-       (tramp-accept-process-output p)
+       (tramp-accept-process-output p 0.1)
 
        ;; Search for prompt.
        (goto-char (point-min))