aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lisp/arc-mode.el11
1 files changed, 8 insertions, 3 deletions
diff --git a/lisp/arc-mode.el b/lisp/arc-mode.el
index 5b6e14d58db..563b71f940e 100644
--- a/lisp/arc-mode.el
+++ b/lisp/arc-mode.el
@@ -1416,7 +1416,8 @@ This doesn't recover lost files, it just undoes changes in the buffer itself."
1416 (while (progn (goto-char p) ;beginning of a base header. 1416 (while (progn (goto-char p) ;beginning of a base header.
1417 (looking-at "\\(.\\|\n\\)\\(.\\|\n\\)-l[hz][0-9ds]-")) 1417 (looking-at "\\(.\\|\n\\)\\(.\\|\n\\)-l[hz][0-9ds]-"))
1418 (let* ((hsize (char-after p)) ;size of the base header (level 0 and 1) 1418 (let* ((hsize (char-after p)) ;size of the base header (level 0 and 1)
1419 (csize (archive-l-e (+ p 7) 4)) ;size of a compressed file to follow. 1419 (csize (archive-l-e (+ p 7) 4)) ;size of a compressed file to follow (level 0 and 2),
1420 ;size of extended headers + the compressed file to follow (level 1).
1420 (ucsize (archive-l-e (+ p 11) 4)) ;size of an uncompressed file. 1421 (ucsize (archive-l-e (+ p 11) 4)) ;size of an uncompressed file.
1421 (time1 (archive-l-e (+ p 15) 2)) ;date/time (MSDOS format in level 0, 1 headers 1422 (time1 (archive-l-e (+ p 15) 2)) ;date/time (MSDOS format in level 0, 1 headers
1422 (time2 (archive-l-e (+ p 17) 2)) ;and UNIX format in level 2 header.) 1423 (time2 (archive-l-e (+ p 17) 2)) ;and UNIX format in level 2 header.)
@@ -1515,8 +1516,12 @@ This doesn't recover lost files, it just undoes changes in the buffer itself."
1515 (length text)) 1516 (length text))
1516 visual) 1517 visual)
1517 files (cons (vector prname ifnname fiddle mode (1- p)) 1518 files (cons (vector prname ifnname fiddle mode (1- p))
1518 files) 1519 files))
1519 p (+ p thsize 2 csize)))) 1520 (cond ((= hdrlvl 1)
1521 (setq p (+ p hsize 2 csize)))
1522 ((or (= hdrlvl 2) (= hdrlvl 0))
1523 (setq p (+ p thsize 2 csize))))
1524 ))
1520 (goto-char (point-min)) 1525 (goto-char (point-min))
1521 (set-buffer-multibyte default-enable-multibyte-characters) 1526 (set-buffer-multibyte default-enable-multibyte-characters)
1522 (let ((dash (concat (if archive-alternate-display 1527 (let ((dash (concat (if archive-alternate-display