emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/arc-mode.el


From: Eli Zaretskii
Subject: [Emacs-diffs] Changes to emacs/lisp/arc-mode.el
Date: Tue, 16 May 2006 18:28:02 +0000

Index: emacs/lisp/arc-mode.el
diff -u emacs/lisp/arc-mode.el:1.74 emacs/lisp/arc-mode.el:1.75
--- emacs/lisp/arc-mode.el:1.74 Tue May  9 23:10:24 2006
+++ emacs/lisp/arc-mode.el      Tue May 16 18:28:02 2006
@@ -1355,7 +1355,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 ?-)
@@ -1497,9 +1501,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))
     (set-buffer-multibyte default-enable-multibyte-characters)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]