]> git.eshelyaron.com Git - emacs.git/commitdiff
* vc-git.el (vc-git--call): Apply `process-file' instead of
authorMichael Albinus <michael.albinus@gmx.de>
Tue, 8 Jan 2008 20:07:21 +0000 (20:07 +0000)
committerMichael Albinus <michael.albinus@gmx.de>
Tue, 8 Jan 2008 20:07:21 +0000 (20:07 +0000)
`call-process'.

* net/tramp.el (tramp-remote-process-environment): Add "LC_CTYPE=C".
Reported by Pete Forman <pete.forman@westerngeco.com>.
(tramp-perl-encode, tramp-perl-decode): Update copyrights.
(tramp-handle-process-file): Handle the case where DESTINATION is
a consp with t as car.
(tramp-wait-for-output): We shall remove exactly what has been
find by the search.

lisp/ChangeLog
lisp/net/tramp.el
lisp/vc-git.el

index e0ed590c6fad30e118b75122aeb51fcdb1615f5c..fea01d5f317f9085f71fe5d3d3d46b1f862595b0 100644 (file)
@@ -1,3 +1,16 @@
+2008-01-08  Michael Albinus  <michael.albinus@gmx.de>
+
+       * vc-git.el (vc-git--call): Apply `process-file' instead of
+       `call-process'.
+
+       * net/tramp.el (tramp-remote-process-environment): Add "LC_CTYPE=C".
+       Reported by Pete Forman <pete.forman@westerngeco.com>.
+       (tramp-perl-encode, tramp-perl-decode): Update copyrights.
+       (tramp-handle-process-file): Handle the case where DESTINATION is
+       a consp with t as car.
+       (tramp-wait-for-output): We shall remove exactly what has been
+       find by the search.
+
 2008-01-08  Kevin Ryde  <user42@zip.com.au>
 
        * progmodes/compile.el (compilation-error-regexp-alist-alist):
index 852a22a703486bfe3218961be7a6d18b9eb8010f..899cefc82d871b400043a0748842a385e3fff836 100644 (file)
@@ -2,7 +2,7 @@
 ;;; -*- mode: Emacs-Lisp; coding: utf-8; -*-
 
 ;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-;;   2005, 2006, 2007 Free Software Foundation, Inc.
+;;   2005, 2006, 2007, 2008 Free Software Foundation, Inc.
 
 ;; (copyright statements below in code to be updated with the above notice)
 
 
 (autoload 'uudecode-decode-region "uudecode")
 
-;; The following Tramp packages must be loaded after Tramp, because
-;; they require Tramp as well.
+;; The following Tramp packages must be loaded after tramp.el, because
+;; they require it as well.
 (eval-after-load "tramp"
   '(dolist
        (feature
        (list
 
-        ;; Tramp commands.
+        ;; Tramp interactive commands.
         'tramp-cmds
 
         ;; Load foreign FTP method.
@@ -891,7 +891,7 @@ The default value is to use the same value as `tramp-rsh-end-of-line'."
 ;; "getconf PATH" yields:
 ;; HP-UX: /usr/bin:/usr/ccs/bin:/opt/ansic/bin:/opt/langtools/bin:/opt/fortran/bin
 ;; Solaris: /usr/xpg4/bin:/usr/ccs/bin:/usr/bin:/opt/SUNWspro/bin
-;; Linux (Debian, Suse): /bin:/usr/bin
+;; GNU/Linux (Debian, Suse): /bin:/usr/bin
 ;; FreeBSD: /usr/bin:/bin:/usr/sbin:/sbin: - beware trailing ":"!
 (defcustom tramp-remote-path
   '(tramp-default-remote-path "/usr/sbin" "/usr/local/bin"
@@ -914,7 +914,7 @@ directories for POSIX compatible commands."
                  (string :tag "Directory"))))
 
 (defcustom tramp-remote-process-environment
-  `("HISTFILE=$HOME/.tramp_history" "HISTSIZE=1" "LC_TIME=C"
+  `("HISTFILE=$HOME/.tramp_history" "HISTSIZE=1" "LC_CTYPE=C" "LC_TIME=C"
     ,(concat "TERM=" tramp-terminal-type)
     "CDPATH=" "HISTORY=" "MAIL=" "MAILCHECK=" "MAILPATH="
     "autocorrect=" "correct=")
@@ -1595,7 +1595,7 @@ on the remote host.")
 (defconst tramp-perl-encode
   "%s -e '
 # This script is contributed by Juanma Barranquero <lektu@terra.es>.
-# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007
+# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008
 #   Free Software Foundation, Inc.
 use strict;
 
@@ -1637,7 +1637,7 @@ This string is passed to `format', so percent characters need to be doubled.")
 (defconst tramp-perl-decode
   "%s -e '
 # This script is contributed by Juanma Barranquero <lektu@terra.es>.
-# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007
+# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008
 #   Free Software Foundation, Inc.
 use strict;
 
@@ -1776,7 +1776,7 @@ normal Emacs functions.")
 If (FUNCTION FILENAME) returns non-nil, then all I/O on that file is done by
 calling HANDLER.")
 
-;;; Internal functions which must come first.
+;;; Internal functions which must come first:
 
 (defsubst tramp-debug-message (vec fmt-string &rest args)
   "Append message to debug buffer.
@@ -2044,9 +2044,9 @@ For definition of that list see `tramp-set-completion-function'."
    (cdr (assoc method tramp-completion-function-alist))))
 
 
-;;; Fontification of `read-file-name'.
+;;; Fontification of `read-file-name':
 
-;; rfn-eshadow.el is part of Emacs 22.  Its is autoloaded.
+;; rfn-eshadow.el is part of Emacs 22.  It is autoloaded.
 (defvar tramp-rfn-eshadow-overlay)
 (make-variable-buffer-local 'tramp-rfn-eshadow-overlay)
 
@@ -3609,7 +3609,7 @@ beginning of local filename are not substituted."
      minibuffer-electric-tilde)))
 
 
-;;; Remote commands.
+;;; Remote commands:
 
 (defun tramp-handle-executable-find (command)
   "Like `executable-find' for Tramp files."
@@ -3693,7 +3693,9 @@ beginning of local filename are not substituted."
         ((bufferp (car destination))
          (setq outbuf (car destination)))
         ((stringp (car destination))
-         (setq outbuf (get-buffer-create (car destination)))))
+         (setq outbuf (get-buffer-create (car destination))))
+        ((car destination)
+         (setq outbuf (current-buffer))))
        ;; stderr
        (cond
         ((stringp (cadr destination))
@@ -4539,7 +4541,7 @@ Falls back to normal file name handler if no Tramp file name handler exists."
 
 (add-hook 'tramp-unload-hook 'tramp-unload-file-name-handlers)
 
-;;; File name handler functions for completion mode.
+;;; File name handler functions for completion mode:
 
 (defvar tramp-completion-mode nil
   "If non-nil, external packages signal that they are in file name completion.
@@ -6245,16 +6247,14 @@ function waits for output unless NOOUTPUT is set."
 (defun tramp-wait-for-output (proc &optional timeout)
   "Wait for output from remote rsh command."
   (with-current-buffer (process-buffer proc)
-    (let ((found
-          (tramp-wait-for-regexp
-           proc timeout
-           ;; Initially, `tramp-end-of-output' is "$ ".  There might
-           ;; be leading escape sequences, which must be ignored.
-           (format "^[^$\n]*%s\r?$" (regexp-quote tramp-end-of-output)))))
+    ;; Initially, `tramp-end-of-output' is "$ ".  There might be
+    ;; leading escape sequences, which must be ignored.
+    (let* ((regexp (format "^[^$\n]*%s\r?$" (regexp-quote tramp-end-of-output)))
+          (found (tramp-wait-for-regexp proc timeout regexp)))
       (if found
          (let (buffer-read-only)
            (goto-char (point-max))
-           (forward-line -2)
+           (re-search-backward regexp nil t)
            (delete-region (point) (point-max)))
        (if timeout
            (tramp-error
index c73c458fcb7484641b48f25d83357569ccb01a5b..7f3a39d55ab13dcfc73c505728d0efb4a4335c83 100644 (file)
@@ -444,7 +444,10 @@ The difference to vc-do-command is that this function always invokes `git'."
   (apply 'vc-do-command buffer okstatus "git" file-or-list flags))
 
 (defun vc-git--call (buffer command &rest args)
-  (apply 'call-process "git" nil buffer nil command args))
+  ;; We don't need to care the arguments.  If there is a file name, it
+  ;; is always a relative one.  This works also for remote
+  ;; directories.
+  (apply 'process-file "git" nil buffer nil command args))
 
 (defun vc-git--out-ok (command &rest args)
   (zerop (apply 'vc-git--call '(t nil) command args)))