Function: ediff-files-internal

ediff-files-internal is a byte-compiled function defined in ediff.el.gz.

Signature

(ediff-files-internal FILE-A FILE-B FILE-C STARTUP-HOOKS JOB-NAME &optional MERGE-BUFFER-FILE)

Source Code

;; Defined in /usr/src/emacs/lisp/vc/ediff.el.gz
;; MERGE-BUFFER-FILE is the file to be associated with the merge buffer
(defun ediff-files-internal (file-A file-B file-C startup-hooks job-name
				    &optional merge-buffer-file)
  (if (string= file-A file-B)
      (error "Files A and B are the same"))
  (if (stringp file-C)
      (or (and (string= file-A file-C) (error "Files A and C are the same"))
          (and (string= file-B file-C) (error "Files B and C are the same"))))
  (let ((ediff--startup-hook startup-hooks)
        buf-A buf-B buf-C)

    (message "Reading file %s ... " file-A)
    ;;(sit-for 0)
    (setq buf-A (ediff-find-file file-A 'ediff-last-dir-A))
    (message "Reading file %s ... " file-B)
    ;;(sit-for 0)
    (setq buf-B (ediff-find-file file-B 'ediff-last-dir-B))
    (when (stringp file-C)
      (message "Reading file %s ... " file-C)
      ;;(sit-for 0)
      (setq buf-C (ediff-find-file
                   file-C
                   (if (eq job-name 'ediff-merge-files-with-ancestor)
                       'ediff-last-dir-ancestor 'ediff-last-dir-C))))
    (ediff-setup buf-A (ediff--buffer-file-name buf-A)
		 buf-B (ediff--buffer-file-name buf-B)
		 buf-C (ediff--buffer-file-name buf-C)
		 ediff--startup-hook
		 (list (cons 'ediff-job-name job-name))
		 merge-buffer-file)))