]> code.delx.au - gnu-emacs/blobdiff - lisp/diff.el
(mouse-choose-completion): New function.
[gnu-emacs] / lisp / diff.el
index 0c474672b7016d56399d772f208e66c46f1ada30..7043c9ac73e19ce1fef816b9abb237f757d220ae 100644 (file)
@@ -113,7 +113,8 @@ is nil, REGEXP matches only half a section.")
                                                (match-beginning subexpr)
                                                (match-end subexpr)))))
                                    (save-excursion
-                                     (set-buffer (find-file-noselect file))
+                                     (save-match-data
+                                       (set-buffer (find-file-noselect file)))
                                      (save-excursion
                                        (goto-line line)
                                        (point-marker)))))
@@ -196,9 +197,14 @@ With prefix arg, prompt for diff switches."
        (let ((command
               (mapconcat 'identity
                          (append '("diff")
-                                 (if (consp diff-switches)
-                                     diff-switches
-                                   (list diff-switches))
+                                 ;; Use explicitly specified switches
+                                 (if switches
+                                     (if (consp switches)
+                                         switches (list switches))
+                                   ;; If not specified, use default.
+                                   (if (consp diff-switches)
+                                       diff-switches
+                                     (list diff-switches)))
                                  (if (or old-alt new-alt)
                                      (list "-L" old "-L" new))
                                  (list (or old-alt old))