Mercurial > hg > xemacs-beta
diff lisp/ediff/ediff-diff.el @ 12:bcdc7deadc19 r19-15b7
Import from CVS: tag r19-15b7
author | cvs |
---|---|
date | Mon, 13 Aug 2007 08:48:16 +0200 |
parents | 376386a54a3c |
children | 9ee227acff29 |
line wrap: on
line diff
--- a/lisp/ediff/ediff-diff.el Mon Aug 13 08:47:56 2007 +0200 +++ b/lisp/ediff/ediff-diff.el Mon Aug 13 08:48:16 2007 +0200 @@ -140,31 +140,45 @@ ;; Run the diff program on FILE1 and FILE2 and put the output in DIFF-BUFFER ;; Return the size of DIFF-BUFFER (defun ediff-make-diff2-buffer (diff-buffer file1 file2) - (cond ((< (ediff-file-size file1) 0) - (message "Can't diff remote files: %s" - (ediff-abbreviate-file-name file1)) - (sit-for 2) - ;; 1 is an error exit code - 1) - ((< (ediff-file-size file2) 0) - (message "Can't diff remote file: %s" - (ediff-abbreviate-file-name file2)) - (sit-for 2) - (message "") - ;; 1 is an error exit code - 1) - (t (message "Computing differences between %s and %s ..." - (file-name-nondirectory file1) - (file-name-nondirectory file2)) - ;; this erases the diff buffer automatically - (ediff-exec-process ediff-diff-program - diff-buffer - 'synchronize - ediff-diff-options file1 file2) - ;;(message "Computing differences ... done") + (let ((file1-size (ediff-file-size file1)) + (file2-size (ediff-file-size file2))) + (cond ((not (numberp file1-size)) + (message "Can't find file: %s" + (ediff-abbreviate-file-name file1)) + (sit-for 2) + ;; 1 is an error exit code + 1) + ((not (numberp file2-size)) + (message "Can't find file: %s" + (ediff-abbreviate-file-name file2)) + (sit-for 2) + ;; 1 is an error exit code + 1) + ((< file1-size 0) + (message "Can't diff remote files: %s" + (ediff-abbreviate-file-name file1)) + (sit-for 2) + ;; 1 is an error exit code + 1) + ((< file2-size 0) + (message "Can't diff remote file: %s" + (ediff-abbreviate-file-name file2)) + (sit-for 2) (message "") - (ediff-eval-in-buffer diff-buffer - (buffer-size))))) + ;; 1 is an error exit code + 1) + (t (message "Computing differences between %s and %s ..." + (file-name-nondirectory file1) + (file-name-nondirectory file2)) + ;; this erases the diff buffer automatically + (ediff-exec-process ediff-diff-program + diff-buffer + 'synchronize + ediff-diff-options file1 file2) + ;;(message "Computing differences ... done") + (message "") + (ediff-eval-in-buffer diff-buffer + (buffer-size)))))) @@ -1187,6 +1201,7 @@ ;;; Local Variables: ;;; eval: (put 'ediff-defvar-local 'lisp-indent-hook 'defun) ;;; eval: (put 'ediff-eval-in-buffer 'lisp-indent-hook 1) +;;; eval: (put 'ediff-eval-in-buffer 'edebug-form-spec '(form body)) ;;; End: (provide 'ediff-diff)