Commit 4cb4ed41 authored by Roland McGrath's avatar Roland McGrath
Browse files

(diff): Fix local compilation-exit-message-function to take the proper

arguments; remove gratuitous use of if around cond; return useful mode
line messages for normal completion.
parent a30b83a5
;;; diff.el --- Run `diff' in compilation-mode.
;; Copyright (C) 1992, 1994 Free Software Foundation, Inc.
;; Copyright (C) 1992, 1994, 1996 Free Software Foundation, Inc.
;; Keywords: unix, tools
......@@ -41,7 +41,7 @@
'(
;; -u format: @@ -OLDSTART,OLDEND +NEWSTART,NEWEND @@
("^@@ -\\([0-9]+\\),[0-9]+ \\+\\([0-9]+\\),[0-9]+ @@$" 1 2)
;; -c format: *** OLDSTART,OLDEND ****
("^\\*\\*\\* \\([0-9]+\\),[0-9]+ \\*\\*\\*\\*$" 1 nil)
;; --- NEWSTART,NEWEND ----
......@@ -57,7 +57,7 @@
;; -n format: {a,d,c}OLDSTART LINES-CHANGED
("^[adc]\\([0-9]+\\)\\( [0-9]+\\)?$" 1)
)
"Alist (REGEXP OLD-IDX NEW-IDX) of regular expressions to match difference
"Alist (REGEXP OLD-IDX NEW-IDX) of regular expressions to match difference
sections in \\[diff] output. If REGEXP matches, the OLD-IDX'th
subexpression gives the line number in the old file, and NEW-IDX'th
subexpression gives the line number in the new file. If OLD-IDX or NEW-IDX
......@@ -223,16 +223,15 @@ With prefix arg, prompt for diff switches."
;; Avoid frightening people with "abnormally terminated"
;; if diff finds differences.
(set (make-local-variable 'compilation-exit-message-function)
(lambda (proc msg)
(let ((code (process-exit-status proc)))
(if (eq (process-status proc) 'exit)
(cond ((zerop code)
'("finished (no differences)\n" . "finished"))
((= code 1)
'("finished\n" . "finished"))
(t
(cons msg code)))
(cons msg code)))))
(lambda (status code msg)
(cond ((not (eq status 'exit))
(cons msg code))
((zerop code)
'("finished (no differences)\n" . "no differences"))
((= code 1)
'("finished\n" . "differences found"))
(t
(cons msg code)))))
(set (make-local-variable 'diff-old-file) old)
(set (make-local-variable 'diff-new-file) new)
(set (make-local-variable 'diff-old-temp-file) old-alt)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment