Function: ediff-setup-diff-regions3

ediff-setup-diff-regions3 is a byte-compiled function defined in ediff-diff.el.gz.

Signature

(ediff-setup-diff-regions3 FILE-A FILE-B FILE-C)

Source Code

;; Defined in /usr/src/emacs/lisp/vc/ediff-diff.el.gz
;; Generate the difference vector and overlays for three files
;; File-C is either the third file to compare (in case of 3-way comparison)
;; or it is the ancestor file.
(defun ediff-setup-diff-regions3 (file-A file-B file-C)
  ;; looking for '-i' or a 'i' among clustered non-long options
  (if (string-match "^-i\\| -i\\|\\(^\\| \\)-[^- ]+i" ediff-diff-options)
      (error "Option `-i' is not allowed in `ediff-diff3-options'"))

  (or (ediff-buffer-live-p ediff-diff-buffer)
      (setq ediff-diff-buffer
	    (get-buffer-create (ediff-unique-buffer-name "*ediff-diff" "*"))))

  (message "Computing differences ...")
  (ediff-exec-process ediff-diff3-program ediff-diff-buffer 'synchronize
		      ediff-actual-diff3-options file-A file-B file-C)

  (ediff-prepare-error-list ediff-diff3-ok-lines-regexp ediff-diff-buffer)
  ;;(message "Computing differences ... done")
  (ediff-convert-diffs-to-overlays
   (ediff-extract-diffs3
    ediff-diff-buffer
    ediff-word-mode ediff-3way-comparison-job ediff-narrow-bounds)
   ))