Function: log-view-diff-common

log-view-diff-common is a byte-compiled function defined in log-view.el.gz.

Signature

(log-view-diff-common BEG END &optional WHOLE-CHANGESET)

Source Code

;; Defined in /usr/src/emacs/lisp/vc/log-view.el.gz
(defun log-view-diff-common (beg end &optional whole-changeset)
  (let* ((to (log-view-current-tag beg))
         (fr-entry (log-view-current-entry end))
         (fr (cadr fr-entry)))
    ;; When TO and FR are the same, or when point is on a line after
    ;; the last entry, look at the previous revision.
    (when (or (string-equal fr to)
              (>= end
                  (save-excursion
                    (goto-char end)
                    (log-view-end-of-defun)
                    (point))))
      (setq fr (vc-call-backend log-view-vc-backend 'previous-revision nil fr)))
    (vc-diff-internal
     t (list log-view-vc-backend
             ;; The value passed here should follow what
             ;; `vc-deduce-fileset' returns.  If we want to see the
             ;; diff for all the files in the changeset, pass NIL for
             ;; the file list.
             (unless whole-changeset
               (if log-view-per-file-logs
                   (list (log-view-current-file))
                 log-view-vc-fileset)))
     fr to)))