branch: externals/diff-hl
commit 845c492a9b5174c136e4246ef8e3312ad9156dfe
Merge: 685ea2d506 aea5557f84
Author: Dmitry Gutov <[email protected]>
Commit: GitHub <[email protected]>

    Merge pull request #262 from spwhitton/vc-run-delayed-success
    
    diff-hl--resolve: Use vc-run-delayed-success on Emacs >=31
---
 diff-hl.el | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/diff-hl.el b/diff-hl.el
index e61c40f483..4837ef1623 100644
--- a/diff-hl.el
+++ b/diff-hl.el
@@ -740,9 +740,13 @@ Return a list of line overlays used."
 (defun diff-hl--resolve (value-or-buffer cb)
   (if (listp value-or-buffer)
       (funcall cb value-or-buffer)
-    (diff-hl--when-done value-or-buffer
-                        #'diff-hl-changes-from-buffer
-                        cb)))
+    (static-if (>= emacs-major-version 31)
+        (with-current-buffer value-or-buffer
+          (vc-run-delayed-success 1
+            (funcall cb (diff-hl-changes-from-buffer (current-buffer)))))
+      (diff-hl--when-done value-or-buffer
+                          #'diff-hl-changes-from-buffer
+                          cb))))
 
 (defun diff-hl--when-done (buffer get-value callback &optional proc)
   (let ((proc (or proc (get-buffer-process buffer))))

Reply via email to