Function: ediff-same-file-contents-lists

ediff-same-file-contents-lists is a byte-compiled function defined in ediff-diff.el.gz.

Signature

(ediff-same-file-contents-lists ENTRIES-1 ENTRIES-2 FILTER-RE)

Source Code

;; Defined in /usr/src/emacs/lisp/vc/ediff-diff.el.gz
;; If lists have the same length and names of files are pairwise equal
;; (removing the directories) then compare contents pairwise.
;; True if all contents are the same; false otherwise
(defun ediff-same-file-contents-lists (entries-1 entries-2 filter-re)
  ;; First, check only the names (works quickly and ensures a
  ;; precondition for subsequent code)
  (if (and (= (length entries-1) (length entries-2))
	   (equal (mapcar #'file-name-nondirectory entries-1)
		  (mapcar #'file-name-nondirectory entries-2)))
      ;; With name equality established, compare the entries
      ;; through recursion.
      (let ((continue t))
	(while (and entries-1 continue)
	  (if (ediff-same-contents
	       (car entries-1) (car entries-2) filter-re)
	      (setq entries-1 (cdr entries-1)
		    entries-2 (cdr entries-2))
	    (setq continue nil))
	  )
	;; if reached the end then lists are equal
	(null entries-1))
    )
  )