diff options
| author | Stefan Monnier | 2009-01-12 03:37:13 +0000 |
|---|---|---|
| committer | Stefan Monnier | 2009-01-12 03:37:13 +0000 |
| commit | 64ac12669e7b908d4865bb9b083c088ca03552ea (patch) | |
| tree | 8ae0904e0ea621d17383a8e9fed89d4ec5465bde | |
| parent | 5e5e80fb43b19caa1eb003a96c0a7cba00126983 (diff) | |
| download | emacs-64ac12669e7b908d4865bb9b083c088ca03552ea.tar.gz emacs-64ac12669e7b908d4865bb9b083c088ca03552ea.zip | |
(tar-header-block-tokenize): Properly ignore the version
subfield of the magic string.
| -rw-r--r-- | lisp/ChangeLog | 46 | ||||
| -rw-r--r-- | lisp/tar-mode.el | 13 |
2 files changed, 33 insertions, 26 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index c337e97aaa6..30ba3804544 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2009-01-12 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 2 | |||
| 3 | * tar-mode.el (tar-header-block-tokenize): Properly ignore the version | ||
| 4 | subfield of the magic string. | ||
| 5 | |||
| 1 | 2009-01-11 Jay Belanger <jay.p.belanger@gmail.com> | 6 | 2009-01-11 Jay Belanger <jay.p.belanger@gmail.com> |
| 2 | 7 | ||
| 3 | * calc/calc-lang.el (math-compose-tex-sqrt): New function. | 8 | * calc/calc-lang.el (math-compose-tex-sqrt): New function. |
| @@ -484,8 +489,8 @@ | |||
| 484 | (follow-update-window-start, follow-select-if-visible) | 489 | (follow-update-window-start, follow-select-if-visible) |
| 485 | (follow-calculate-first-window-start-from-below) | 490 | (follow-calculate-first-window-start-from-below) |
| 486 | (follow-post-command-hook): Code cleanup. | 491 | (follow-post-command-hook): Code cleanup. |
| 487 | (follow-downward, follow-calculate-first-window-start): Function | 492 | (follow-downward, follow-calculate-first-window-start): |
| 488 | deleted and merged into follow-redisplay. | 493 | Delete function and merge into follow-redisplay. |
| 489 | (follow-redisplay): Merge code from follow-downward and | 494 | (follow-redisplay): Merge code from follow-downward and |
| 490 | follow-calculate-first-window-start. | 495 | follow-calculate-first-window-start. |
| 491 | 496 | ||
| @@ -495,7 +500,7 @@ | |||
| 495 | 500 | ||
| 496 | 2008-12-29 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de> | 501 | 2008-12-29 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de> |
| 497 | 502 | ||
| 498 | * proced.el (proced-temp-alist): Renamed from variable | 503 | * proced.el (proced-temp-alist): Rename from variable |
| 499 | proced-children-alist. | 504 | proced-children-alist. |
| 500 | (proced-process-tree, proced-toggle-tree): Fix docstring. | 505 | (proced-process-tree, proced-toggle-tree): Fix docstring. |
| 501 | (proced-tree): Fix docstring. Simplify. Use proced-temp-alist. | 506 | (proced-tree): Fix docstring. Simplify. Use proced-temp-alist. |
| @@ -531,24 +536,22 @@ | |||
| 531 | 536 | ||
| 532 | 2008-12-28 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de> | 537 | 2008-12-28 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de> |
| 533 | 538 | ||
| 534 | * proced.el (proced-grammar-alist): Allow predicate nil. New | 539 | * proced.el (proced-grammar-alist): Allow predicate nil. |
| 535 | attribute tree. | 540 | New attribute tree. |
| 536 | (proced-format-alist): Use attribute tree. | 541 | (proced-format-alist): Use attribute tree. |
| 537 | (proced-tree-flag, proced-tree-indent): New variables. | 542 | (proced-tree-flag, proced-tree-indent): New variables. |
| 538 | (proced-children-alist): Renamed from proced-process-tree. PPID | 543 | (proced-children-alist): Rename from proced-process-tree. |
| 539 | must refer to a process in process-alist. Ignore PPIDs that equal | 544 | PPID must refer to a process in process-alist. |
| 540 | PID (Bug#1718). Children alist inherits sorting order from | 545 | Ignore PPIDs that equal PID (Bug#1718). |
| 541 | process-alist. | 546 | Children alist inherits sorting order from process-alist. |
| 542 | (proced-process-tree): New variable. New function. | 547 | (proced-process-tree): New variable. New function. |
| 543 | (proced-process-tree-internal, proced-toggle-tree) | 548 | (proced-process-tree-internal, proced-toggle-tree) |
| 544 | (proced-tree, proced-tree-insert, proced-format-tree): New | 549 | (proced-tree, proced-tree-insert, proced-format-tree): New functions. |
| 545 | functions. | ||
| 546 | (proced-mark-process-alist): Add docstring. | 550 | (proced-mark-process-alist): Add docstring. |
| 547 | (proced-filter-parents): PPID must refer to a process in | 551 | (proced-filter-parents): PPID must refer to a process in |
| 548 | process-alist. Ignore PPIDs that equal PID (Bug#1718). | 552 | process-alist. Ignore PPIDs that equal PID (Bug#1718). |
| 549 | (proced-sort): Throw error if attribute is not sortable. | 553 | (proced-sort): Throw error if attribute is not sortable. |
| 550 | (proced-sort-interactive): Restrict completion to sortable | 554 | (proced-sort-interactive): Restrict completion to sortable attributes. |
| 551 | attributes. | ||
| 552 | (proced-format): Include tree in standard attributes if | 555 | (proced-format): Include tree in standard attributes if |
| 553 | proced-tree-flag is non-nil. Make header clickable only if | 556 | proced-tree-flag is non-nil. Make header clickable only if |
| 554 | corresponding predicate is non-nil. | 557 | corresponding predicate is non-nil. |
| @@ -800,8 +803,8 @@ | |||
| 800 | * startup.el (command-line): Do not mention the server name in | 803 | * startup.el (command-line): Do not mention the server name in |
| 801 | case the user has not mentioned it, print a more explicit message. | 804 | case the user has not mentioned it, print a more explicit message. |
| 802 | 805 | ||
| 803 | * vc-dir.el (vc-dir-at-event): Rename from vc-at-event. Change | 806 | * vc-dir.el (vc-dir-at-event): Rename from vc-at-event. |
| 804 | all callers. | 807 | Change all callers. |
| 805 | 808 | ||
| 806 | 2008-12-18 Sam Steingold <sds@gnu.org> | 809 | 2008-12-18 Sam Steingold <sds@gnu.org> |
| 807 | 810 | ||
| @@ -819,8 +822,8 @@ | |||
| 819 | 822 | ||
| 820 | 2008-12-17 Daiki Ueno <ueno@unixuser.org> | 823 | 2008-12-17 Daiki Ueno <ueno@unixuser.org> |
| 821 | 824 | ||
| 822 | * epa-file.el (epa-file-insert-file-contents): Set | 825 | * epa-file.el (epa-file-insert-file-contents): |
| 823 | buffer-file-name before decrypting a file. | 826 | Set buffer-file-name before decrypting a file. |
| 824 | 827 | ||
| 825 | 2008-12-16 Juanma Barranquero <lekktu@gmail.com> | 828 | 2008-12-16 Juanma Barranquero <lekktu@gmail.com> |
| 826 | 829 | ||
| @@ -877,12 +880,11 @@ | |||
| 877 | 880 | ||
| 878 | 2008-12-14 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de> | 881 | 2008-12-14 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de> |
| 879 | 882 | ||
| 880 | * proced.el (proced-auto-update-interval): Renamed from | 883 | * proced.el (proced-auto-update-interval): Rename from |
| 881 | proced-timer-interval. | 884 | proced-timer-interval. |
| 882 | (proced-auto-update-flag): Renamed from proced-timer-flag. | 885 | (proced-auto-update-flag): Rename from proced-timer-flag. |
| 883 | (proced-auto-update-timer): Renamed from proced-timer. | 886 | (proced-auto-update-timer): Rename from proced-timer. |
| 884 | (proced-toggle-auto-update): Renamed from | 887 | (proced-toggle-auto-update): Rename from proced-toggle-timer-flag. |
| 885 | proced-toggle-timer-flag. | ||
| 886 | (proced-available): Initialize appropriately. | 888 | (proced-available): Initialize appropriately. |
| 887 | 889 | ||
| 888 | 2008-12-13 Glenn Morris <rgm@gnu.org> | 890 | 2008-12-13 Glenn Morris <rgm@gnu.org> |
diff --git a/lisp/tar-mode.el b/lisp/tar-mode.el index 7e091d8d038..99a7303944a 100644 --- a/lisp/tar-mode.el +++ b/lisp/tar-mode.el | |||
| @@ -239,8 +239,13 @@ write-date, checksum, link-type, and link-name." | |||
| 239 | (gname-end (1- tar-dmaj-offset)) | 239 | (gname-end (1- tar-dmaj-offset)) |
| 240 | (link-p (aref string tar-linkp-offset)) | 240 | (link-p (aref string tar-linkp-offset)) |
| 241 | (magic-str (substring string tar-magic-offset | 241 | (magic-str (substring string tar-magic-offset |
| 242 | (1- tar-uname-offset))) | 242 | ;; The magic string is actually 6bytes |
| 243 | (uname-valid-p (car (member magic-str '("ustar " "ustar\0\0")))) | 243 | ;; of magic string plus 2bytes of version |
| 244 | ;; which we here ignore. | ||
| 245 | (- tar-uname-offset 2))) | ||
| 246 | ;; The magic string is "ustar\0" for POSIX format, and | ||
| 247 | ;; "ustar " for GNU Tar's format. | ||
| 248 | (uname-valid-p (car (member magic-str '("ustar " "ustar\0")))) | ||
| 244 | name linkname | 249 | name linkname |
| 245 | (nulsexp "[^\000]*\000")) | 250 | (nulsexp "[^\000]*\000")) |
| 246 | (when (string-match nulsexp string tar-name-offset) | 251 | (when (string-match nulsexp string tar-name-offset) |
| @@ -256,7 +261,7 @@ write-date, checksum, link-type, and link-name." | |||
| 256 | nil | 261 | nil |
| 257 | (- link-p ?0))) | 262 | (- link-p ?0))) |
| 258 | (setq linkname (substring string tar-link-offset link-end)) | 263 | (setq linkname (substring string tar-link-offset link-end)) |
| 259 | (when (and (equal uname-valid-p "ustar\0\0") | 264 | (when (and (equal uname-valid-p "ustar\0") |
| 260 | (string-match nulsexp string tar-prefix-offset) | 265 | (string-match nulsexp string tar-prefix-offset) |
| 261 | (> (match-end 0) (1+ tar-prefix-offset))) | 266 | (> (match-end 0) (1+ tar-prefix-offset))) |
| 262 | (setq name (concat (substring string tar-prefix-offset | 267 | (setq name (concat (substring string tar-prefix-offset |
| @@ -271,7 +276,7 @@ write-date, checksum, link-type, and link-name." | |||
| 271 | (setq link-p 5)) ; directory | 276 | (setq link-p 5)) ; directory |
| 272 | 277 | ||
| 273 | (if (and (equal name "././@LongLink") | 278 | (if (and (equal name "././@LongLink") |
| 274 | (equal magic-str "ustar ")) ;OLDGNU_MAGIC. | 279 | (equal magic-str "ustar ")) ;OLDGNU_MAGIC. |
| 275 | ;; This is a GNU Tar long-file-name header. | 280 | ;; This is a GNU Tar long-file-name header. |
| 276 | (let* ((size (tar-parse-octal-integer | 281 | (let* ((size (tar-parse-octal-integer |
| 277 | string tar-size-offset tar-time-offset)) | 282 | string tar-size-offset tar-time-offset)) |