Function: ediff-set-state-of-diff-in-all-buffers

ediff-set-state-of-diff-in-all-buffers is a byte-compiled function defined in ediff-merg.el.gz.

Signature

(ediff-set-state-of-diff-in-all-buffers N CTL-BUF)

Source Code

;; Defined in /usr/src/emacs/lisp/vc/ediff-merg.el.gz
(defun ediff-set-state-of-diff-in-all-buffers (n ctl-buf)
  (let ((regA (ediff-get-region-contents n 'A ctl-buf))
	(regB (ediff-get-region-contents n 'B ctl-buf))
	(regC (ediff-get-region-contents n 'C ctl-buf)))
    (cond ((and (string= regA regB) (string= regA  regC))
	   (ediff-set-state-of-diff n 'A "=diff(B)")
	   (ediff-set-state-of-diff n 'B "=diff(C)")
	   (ediff-set-state-of-diff n 'C "=diff(A)"))
	  ((string= regA regB)
	   (ediff-set-state-of-diff n 'A "=diff(B)")
	   (ediff-set-state-of-diff n 'B "=diff(A)")
	   (ediff-set-state-of-diff n 'C nil))
	  ((string= regA regC)
	   (ediff-set-state-of-diff n 'A "=diff(C)")
	   (ediff-set-state-of-diff n 'C "=diff(A)")
	   (ediff-set-state-of-diff n 'B nil))
	  ((string= regB regC)
	   (ediff-set-state-of-diff n 'C "=diff(B)")
	   (ediff-set-state-of-diff n 'B "=diff(C)")
	   (ediff-set-state-of-diff n 'A nil))
	  ((string= regC (ediff-get-combined-region n))
	   (ediff-set-state-of-diff n 'A nil)
	     (ediff-set-state-of-diff n 'B nil)
	     (ediff-set-state-of-diff n 'C "=diff(A+B)"))
	  (t (ediff-set-state-of-diff n 'A nil)
	     (ediff-set-state-of-diff n 'B nil)
	     (ediff-set-state-of-diff n 'C nil)))
    ))