diff options
author | Stefan Kangas <stefankangas@gmail.com> | 2023-01-23 02:09:15 +0100 |
---|---|---|
committer | Stefan Kangas <stefankangas@gmail.com> | 2023-01-23 02:09:15 +0100 |
commit | 9c8e82484ab6744b9d3540895d9dc8b6929439e5 (patch) | |
tree | 3d9bd82cda2099e6bac5812c685c4edd9bdd191a /lisp/vc/vc.el | |
parent | b767a641c8fb1f06326de4598ef717014c16a334 (diff) | |
parent | b3814b43f6017d48bde2ddd12821e83948ee19dc (diff) | |
download | emacs-9c8e82484ab6744b9d3540895d9dc8b6929439e5.tar.gz |
Merge from origin/emacs-29
b3814b43f60 (ruby-ts--predefined-variables): Fix the $` and $' entries
db02cbdfe02 * lisp/find-dired.el (find-dired-with-command): Quote fin...
2343a067c3d Generalize vc-pull-and-push to support more backends (bug...
846838dbab8 Add test suite for sgml-html-meta-auto-coding-function
0fb90f524db Fix decoding HTML files from archives
c854ef7a187 ; Fix last change (bug#60556).
8e83604dfe0 Avoid crashes in batch Emacs sub-processes on MS-Windows
808e101fabe Tweak BSD style indentation (bug#60984)
204519a2e73 Fix typo of exposed symbol name
9296e0c6495 Fix typo after move to common lib (bug#61001)
e74ba72a6a3 ruby-ts-mode: Fix two additional cases with ruby-method-c...
ae7e28a4372 ruby-mode.el: Expand some docstrings with examples
89cb3c3f157 Minor fixes for Haiku
6adc193ad66 Move c-like common utils into own library (bug#60961)
# Conflicts:
# lisp/progmodes/typescript-ts-mode.el
Diffstat (limited to 'lisp/vc/vc.el')
-rw-r--r-- | lisp/vc/vc.el | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el index 13124509c27..0890b63d417 100644 --- a/lisp/vc/vc.el +++ b/lisp/vc/vc.el @@ -3071,9 +3071,20 @@ It also signals an error in a Bazaar bound branch." (interactive "P") (let* ((vc-fileset (vc-deduce-fileset t)) (backend (car vc-fileset))) - (if (vc-find-backend-function backend 'pull-and-push) - (vc-call-backend backend 'pull-and-push arg) - (user-error "VC pull-and-push is unsupported for `%s'" backend)))) + (if (vc-find-backend-function backend 'pull) + (let ((proc (vc-call-backend backend 'pull arg))) + (when (and (processp proc) (process-buffer proc)) + (with-current-buffer (process-buffer proc) + (if (and (eq (process-status proc) 'exit) + (zerop (process-exit-status proc))) + (let ((vc--inhibit-async-window t)) + (vc-push arg)) + (vc-exec-after + (lambda () + (let ((vc--inhibit-async-window t)) + (vc-push arg))) + proc))))) + (user-error "VC pull is unsupported for `%s'" backend)))) (defun vc-version-backup-file (file &optional rev) "Return name of backup file for revision REV of FILE. |