sperber(a)informatik.uni-tuebingen.de (Michael Sperber [Mr. Preprocessor]) writes:
>>>>> "Gunnar" == Gunnar Evermann
<ge204(a)eng.cam.ac.uk> writes:
Gunnar> diff-parse-hunks uses diff-hunk-pattern which is normally set to
Gunnar> something sensible by diff, but this doesn't happen here as we call
Gunnar> diff-mode directly.
That's why cvs-compat.el has this:
(defun cvs-prepare-diff-mode (flags)
"Gross hack to support XEmacs's diff-mode."
(if (boundp 'diff-hunk-pattern) ; recognize old diff.el from EFS/Dired
(catch 'done
(let ((flags (or flags (list nil))))
(while flags
(let ((patterns (assq (car flags) diff-search-pattern-alist)))
(if patterns
(progn
(setq diff-old-file-pattern (nth 2 patterns)
diff-new-file-pattern (nth 3 patterns)
diff-hunk-pattern (nth 1 patterns))
(throw 'done nil)))
(setq flags (cdr flags))))))))
Doesn't it get called for you?
It is called, but flags is ("-u") and diff-search-pattern-alist
contains characters as keys.
I think the "-u" is picked up from my ~/.cvsrc which contains:
---
cvs -w -z3
diff -u
rdiff -u
update -Pd
----
I'll leave the fix to you as I am not sure wheter flags sometimes
really only contains the character.
Gunnar