mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-14 16:50:58 +00:00
(vc-do-command): Return the process object in
the asynchronous case. Use when instead of if. Do not run vc-exec-after to display a message if not enabled.
This commit is contained in:
parent
0e172cc2c1
commit
4096c5f2f0
@ -1,5 +1,9 @@
|
||||
2009-09-20 Dan Nicolaescu <dann@ics.uci.edu>
|
||||
|
||||
* vc-dispatcher.el (vc-do-command): Return the process object in
|
||||
the asynchronous case. Use when instead of if. Do not run
|
||||
vc-exec-after to display a message if not enabled.
|
||||
|
||||
* vc-git.el (vc-git-dir-extra-headers): Add keymap and mouse-face
|
||||
properties to the stash strings.
|
||||
(vc-git-stash-list): Return a list of strings.
|
||||
|
@ -87,7 +87,7 @@
|
||||
;;
|
||||
;; The main interface to the lower level is vc-do-command. This launches a
|
||||
;; command, synchronously or asynchronously, making the output available
|
||||
;; in a command log buffer. Two other functions, (vc-start-annotation) and
|
||||
;; in a command log buffer. Two other functions, (vc-start-logentry) and
|
||||
;; (vc-finish-logentry), allow you to associate a command closure with an
|
||||
;; annotation buffer so that when the user confirms the comment the closure
|
||||
;; is run (with the comment as part of its context).
|
||||
@ -280,7 +280,9 @@ subprocess; if it is t it means to ignore all execution errors).
|
||||
FILE-OR-LIST is the name of a working file; it may be a list of
|
||||
files or be nil (to execute commands that don't expect a file
|
||||
name or set of files). If an optional list of FLAGS is present,
|
||||
that is inserted into the command line before the filename."
|
||||
that is inserted into the command line before the filename.
|
||||
Return the return value of the slave command in the synchronous
|
||||
case, and the process object in the asynchronous case."
|
||||
;; FIXME: file-relative-name can return a bogus result because
|
||||
;; it doesn't look at the actual file-system to see if symlinks
|
||||
;; come into play.
|
||||
@ -310,7 +312,7 @@ that is inserted into the command line before the filename."
|
||||
;; something, we'd have used vc-eval-after.
|
||||
;; Use `delete-process' rather than `kill-process' because we don't
|
||||
;; want any of its output to appear from now on.
|
||||
(if oldproc (delete-process oldproc)))
|
||||
(when oldproc (delete-process oldproc)))
|
||||
(let ((squeezed (remq nil flags))
|
||||
(inhibit-read-only t)
|
||||
(status 0))
|
||||
@ -330,13 +332,14 @@ that is inserted into the command line before the filename."
|
||||
(let ((process-connection-type nil))
|
||||
(apply 'start-file-process command (current-buffer)
|
||||
command squeezed))))
|
||||
(if vc-command-messages
|
||||
(message "Running %s in background..." full-command))
|
||||
(when vc-command-messages
|
||||
(message "Running %s in background..." full-command))
|
||||
;;(set-process-sentinel proc (lambda (p msg) (delete-process p)))
|
||||
(set-process-filter proc 'vc-process-filter)
|
||||
(vc-exec-after
|
||||
`(if vc-command-messages
|
||||
(message "Running %s in background... done" ',full-command))))
|
||||
(setq status proc)
|
||||
(when vc-command-messages
|
||||
(vc-exec-after
|
||||
`(message "Running %s in background... done" ',full-command))))
|
||||
;; Run synchronously
|
||||
(when vc-command-messages
|
||||
(message "Running %s in foreground..." full-command))
|
||||
@ -350,11 +353,9 @@ that is inserted into the command line before the filename."
|
||||
(goto-char (point-min))
|
||||
(shrink-window-if-larger-than-buffer))
|
||||
(error "Running %s...FAILED (%s)" full-command
|
||||
(if (integerp status) (format "status %d" status) status))))
|
||||
;; We're done. But don't emit a status message if running
|
||||
;; asynchronously, it would just mislead.
|
||||
(if (and vc-command-messages (not (eq okstatus 'async)))
|
||||
(message "Running %s...OK = %d" full-command status)))
|
||||
(if (integerp status) (format "status %d" status) status)))
|
||||
(when vc-command-messages
|
||||
(message "Running %s...OK = %d" full-command status))))
|
||||
(vc-exec-after
|
||||
`(run-hook-with-args 'vc-post-command-functions
|
||||
',command ',file-or-list ',flags))
|
||||
|
Loading…
Reference in New Issue
Block a user