emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/emacs-23 r100127: * net/tramp.el (tramp-get


From: Michael Albinus
Subject: [Emacs-diffs] /srv/bzr/emacs/emacs-23 r100127: * net/tramp.el (tramp-get-inline-coding): Return `nil' in case of
Date: Thu, 21 Oct 2010 08:33:47 +0200
User-agent: Bazaar (2.0.3)

------------------------------------------------------------
revno: 100127
committer: Michael Albinus <address@hidden>
branch nick: emacs-23
timestamp: Thu 2010-10-21 08:33:47 +0200
message:
  * net/tramp.el (tramp-get-inline-coding): Return `nil' in case of
  errors.
  
  * net/trampver.el: Update release number.
modified:
  lisp/ChangeLog
  lisp/net/tramp.el
  lisp/net/trampver.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2010-10-20 00:46:21 +0000
+++ b/lisp/ChangeLog    2010-10-21 06:33:47 +0000
@@ -1,3 +1,10 @@
+2010-10-21  Michael Albinus  <address@hidden>
+
+       * net/tramp.el (tramp-get-inline-coding): Return `nil' in case of
+       errors.
+
+       * net/trampver.el: Update release number.
+
 2010-10-20  Kenichi Handa  <address@hidden>
 
        * face-remap.el (text-scale-adjust): Call read-event with a proper

=== modified file 'lisp/net/tramp.el'
--- a/lisp/net/tramp.el 2010-10-19 09:26:21 +0000
+++ b/lisp/net/tramp.el 2010-10-21 06:33:47 +0000
@@ -8578,54 +8578,57 @@
 Otherwise, either a string is returned which contains a `%s' mark
 to be used for the respective input or output file; or a Lisp
 function cell is returned to be applied on a buffer."
-  (let ((coding
-        (with-connection-property vec prop
-          (tramp-find-inline-encoding vec)
-          (tramp-get-connection-property vec prop nil)))
-       (prop1 (if (string-match "encoding" prop)
-                  "inline-compress" "inline-decompress"))
-       compress)
-    ;; The connection property might have been cached.  So we must send
-    ;; the script to the remote side - maybe.
-    (when (and coding (symbolp coding) (string-match "remote" prop))
-      (let ((name (symbol-name coding)))
-       (while (string-match (regexp-quote "-") name)
-         (setq name (replace-match "_" nil t name)))
-       (tramp-maybe-send-script vec (symbol-value coding) name)
-       (setq coding name)))
-    (when coding
-      ;; Check for the `compress' command.
-      (setq compress (tramp-get-inline-compress vec prop1 size))
-      ;; Return the value.
-      (cond
-       ((and compress (symbolp coding))
-       (if (string-match "decompress" prop1)
+  ;; We must catch the errors, because we want to return `nil', when
+  ;; no inline coding is found.
+  (ignore-errors
+    (let ((coding
+          (with-connection-property vec prop
+            (tramp-find-inline-encoding vec)
+            (tramp-get-connection-property vec prop nil)))
+         (prop1 (if (string-match "encoding" prop)
+                    "inline-compress" "inline-decompress"))
+         compress)
+      ;; The connection property might have been cached.  So we must
+      ;; send the script to the remote side - maybe.
+      (when (and coding (symbolp coding) (string-match "remote" prop))
+       (let ((name (symbol-name coding)))
+         (while (string-match (regexp-quote "-") name)
+           (setq name (replace-match "_" nil t name)))
+         (tramp-maybe-send-script vec (symbol-value coding) name)
+         (setq coding name)))
+      (when coding
+       ;; Check for the `compress' command.
+       (setq compress (tramp-get-inline-compress vec prop1 size))
+       ;; Return the value.
+       (cond
+        ((and compress (symbolp coding))
+         (if (string-match "decompress" prop1)
+             `(lambda (beg end)
+                (,coding beg end)
+                (let ((coding-system-for-write 'binary)
+                      (coding-system-for-read 'binary))
+                  (apply
+                   'call-process-region (point-min) (point-max)
+                   (car (split-string ,compress)) t t nil
+                   (cdr (split-string ,compress)))))
            `(lambda (beg end)
-              (,coding beg end)
               (let ((coding-system-for-write 'binary)
                     (coding-system-for-read 'binary))
                 (apply
-                 'call-process-region (point-min) (point-max)
+                 'call-process-region beg end
                  (car (split-string ,compress)) t t nil
-                 (cdr (split-string ,compress)))))
-         `(lambda (beg end)
-            (let ((coding-system-for-write 'binary)
-                  (coding-system-for-read 'binary))
-              (apply
-               'call-process-region beg end
-               (car (split-string ,compress)) t t nil
-               (cdr (split-string ,compress))))
-            (,coding (point-min) (point-max)))))
-       ((symbolp coding)
-       coding)
-       ((and compress (string-match "decoding" prop))
-       (format "(%s | %s >%%s)" coding compress))
-       (compress
-       (format "(%s <%%s | %s)" compress coding))
-       ((string-match "decoding" prop)
-       (format "%s >%%s" coding))
-       (t
-       (format "%s <%%s" coding))))))
+                 (cdr (split-string ,compress))))
+              (,coding (point-min) (point-max)))))
+        ((symbolp coding)
+         coding)
+        ((and compress (string-match "decoding" prop))
+         (format "(%s | %s >%%s)" coding compress))
+        (compress
+         (format "(%s <%%s | %s)" compress coding))
+        ((string-match "decoding" prop)
+         (format "%s >%%s" coding))
+        (t
+         (format "%s <%%s" coding)))))))
 
 (defun tramp-get-method-parameter (method param)
   "Return the method parameter PARAM.

=== modified file 'lisp/net/trampver.el'
--- a/lisp/net/trampver.el      2010-08-26 19:23:02 +0000
+++ b/lisp/net/trampver.el      2010-10-21 06:33:47 +0000
@@ -30,14 +30,14 @@
 ;; version check is defined in macro AC_EMACS_INFO of aclocal.m4;
 ;; should be changed only there.
 
-(defconst tramp-version "2.1.19"
+(defconst tramp-version "2.1.20-pre"
   "This version of Tramp.")
 
 (defconst tramp-bug-report-address "address@hidden"
   "Email address to send bug reports to.")
 
 ;; Check for (X)Emacs version.
-(let ((x (if (or (>= emacs-major-version 22)   (and (featurep 'xemacs)      (= 
emacs-major-version 21)      (>= emacs-minor-version 4)))    "ok"    (format 
"Tramp 2.1.19 is not fit for %s"       (when (string-match "^.*$" 
(emacs-version))       (match-string 0 (emacs-version)))))))
+(let ((x (if (or (>= emacs-major-version 22)   (and (featurep 'xemacs)      (= 
emacs-major-version 21)      (>= emacs-minor-version 4)))    "ok"    (format 
"Tramp 2.1.20-pre is not fit for %s"           (when (string-match "^.*$" 
(emacs-version))       (match-string 0 (emacs-version)))))))
   (unless (string-match "\\`ok\\'" x) (error "%s" x)))
 
 (provide 'trampver)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]