[Top][All Lists]

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

bug#35420: Support git in ediff-patch-file

From: Juri Linkov
Subject: bug#35420: Support git in ediff-patch-file
Date: Thu, 25 Apr 2019 00:38:43 +0300
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-pc-linux-gnu)

This patch adds support for git patches to ediff-patch-file:

diff --git a/lisp/vc/ediff-ptch.el b/lisp/vc/ediff-ptch.el
index 4178b5a8c0..5c71c2c8cb 100644
--- a/lisp/vc/ediff-ptch.el
+++ b/lisp/vc/ediff-ptch.el
@@ -297,11 +297,15 @@ ediff-fixup-patch-map
              ;; file names. This is a heuristic intended to improve guessing
              (let ((default-directory (file-name-directory filename)))
                (unless (or (file-name-absolute-p base-dir1)
-                           (file-name-absolute-p base-dir2)
-                           (not (file-exists-p base-dir1))
-                           (not (file-exists-p base-dir2)))
-                 (setq base-dir1 ""
-                       base-dir2 "")))
+                           (file-name-absolute-p base-dir2))
+                 (if (and (file-exists-p base-dir1)
+                          (file-exists-p base-dir2))
+                     (setq base-dir1 ""
+                           base-dir2 "")
+                   (when (and (string-match-p "^a/" base-dir1)
+                              (string-match-p "^b/" base-dir2))
+                     (setq base-dir1 "a/"
+                           base-dir2 "b/")))))
              (or (string= (car proposed-file-names) "/dev/null")
                  (setcar proposed-file-names

reply via email to

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