Function: archive--mode-revert

archive--mode-revert is a byte-compiled function defined in arc-mode.el.gz.

Signature

(archive--mode-revert ORIG-FUN &rest ARGS)

Source Code

;; Defined in /usr/src/emacs/lisp/arc-mode.el.gz
;; Revert the buffer and recompute the dired-like listing.
(defun archive--mode-revert (orig-fun &rest args)
  (let ((no (archive-get-lineno)))
    (setq archive-files nil)
    ;; 'orig-fun' will indirectly call 'archive-desummarize', which will
    ;; delete the region between point-min and
    ;; 'archive-proper-file-start'.  But the latter will be invalidated
    ;; by 'orig-fun' (which actually reverts the buffer), so by setting
    ;; it to 1 we prevent the damage from that deletion.
    (setq archive-proper-file-start 1)
    (let ((coding-system-for-read 'no-conversion))
      (apply orig-fun t t (cddr args)))
    (archive-mode)
    (goto-char archive-file-list-start)
    (archive-next-line no)))