Mercurial > emacs
diff lisp/arc-mode.el @ 90399:a5812696f7bf unicode-pre-font-backend
Merge from emacs--devo--0
Patches applied:
* emacs--devo--0 (patch 274-284)
- Update from CVS
- Update etc/MORE.STUFF.
- Merge from gnus--rel--5.10
* gnus--rel--5.10 (patch 101)
- Update from CVS
Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-62
author | Miles Bader <miles@gnu.org> |
---|---|
date | Wed, 17 May 2006 07:46:49 +0000 |
parents | 146cd8369025 ff708eaf43ab |
children | a8190f7e546e |
line wrap: on
line diff
--- a/lisp/arc-mode.el Mon May 15 03:48:50 2006 +0000 +++ b/lisp/arc-mode.el Wed May 17 07:46:49 2006 +0000 @@ -1379,7 +1379,11 @@ visual) files (cons (vector efnname ifnname fiddle nil (1- p)) files) - p (+ p 29 csize)))) + ;; p needs to stay an integer, since we use it in char-after + ;; above. Passing through `round' limits the compressed size + ;; to most-positive-fixnum, but if the compressed size exceeds + ;; that, we cannot visit the archive anyway. + p (+ p 29 (round csize))))) (goto-char (point-min)) (let ((dash (concat "- -------- ----------- -------- " (make-string maxlen ?-) @@ -1519,9 +1523,13 @@ files (cons (vector prname ifnname fiddle mode (1- p)) files)) (cond ((= hdrlvl 1) - (setq p (+ p hsize 2 csize))) + ;; p needs to stay an integer, since we use it in goto-char + ;; above. Passing through `round' limits the compressed size + ;; to most-positive-fixnum, but if the compressed size exceeds + ;; that, we cannot visit the archive anyway. + (setq p (+ p hsize 2 (round csize)))) ((or (= hdrlvl 2) (= hdrlvl 0)) - (setq p (+ p thsize 2 csize)))) + (setq p (+ p thsize 2 (round csize))))) )) (goto-char (point-min)) (let ((dash (concat (if archive-alternate-display