summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/easy-mmode.el
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2019-12-30 18:17:03 +0200
committerEli Zaretskii <eliz@gnu.org>2019-12-30 18:17:03 +0200
commit59f71d20eade09e6c2ef99fc4d9b99a161bff040 (patch)
tree6523dd1296d9dafdba473b05ea4f38f44d1cf41a /lisp/emacs-lisp/easy-mmode.el
parente3ec84fd7d91c9fff756e28d14ce33f7a37ac19f (diff)
downloademacs-59f71d20eade09e6c2ef99fc4d9b99a161bff040.tar.gz
emacs-59f71d20eade09e6c2ef99fc4d9b99a161bff040.tar.bz2
emacs-59f71d20eade09e6c2ef99fc4d9b99a161bff040.zip
Fix tar-mode reading the oldgnu Tar format
This makes sure an entry for a long file name will not accidentally appear as a directory, and thus its size will be disregarded, causing corrupted file headers for all the subsequent entries. The original problem happened because the long file name truncated to 99 bytes happened to end in a slash, which tar-mode takes to be the indication of a directory. * lisp/tar-mode.el (tar-header-block-tokenize): Accept an additional argument DISABLE-SLASH; if non-nil, don't set the link-type field of the descriptor to 5 (meaning a directory) just because the name ends in a slash. Use this argument when calling itself recursively, to read the entry of the file with a long name. Set the link-type to 5 if the long name ends in a slash. (Bug#38777)
Diffstat (limited to 'lisp/emacs-lisp/easy-mmode.el')
0 files changed, 0 insertions, 0 deletions