bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#1862: 23.0.60; tar-mode on posix ustar


From: Kevin Ryde
Subject: bug#1862: 23.0.60; tar-mode on posix ustar
Date: Fri, 16 Jan 2009 11:18:45 +1100
User-agent: Gnus/5.110011 (No Gnus v0.11) Emacs/22.2 (gnu/linux)

Stefan Monnier <monnier@iro.umontreal.ca> writes:
>
> Indeed, the code didn't pay attention to the version field, but
> incorrectly clipped it out.  I've installed a similar fix to yours, just
> a bit simpler.

Does tar-rename-entry have to notice the shorter magic-str now too?
Maybe something like the following, with the happy side effect of no
longer writing a \0 in the version field, rather digits 00 per posix.

Note totally untested!, as my build is in a rather broken state at the
moment ... :-)

*** tar-mode.el 14 Jan 2009 07:53:50 +1100      1.136
--- tar-mode.el 16 Jan 2009 11:10:21 +1100      
***************
*** 1053,1060 ****
                 (string-match "/" encoded-new-name
                             (- (length encoded-new-name) 99))
               (< (match-beginning 0) 155))
!       (unless (equal (tar-header-magic descriptor) "ustar\0\0")
!         (tar-alter-one-field tar-magic-offset "ustar\0\0"))
        (setq prefix (substring encoded-new-name 0 (match-beginning 0)))
        (setq encoded-new-name (substring encoded-new-name (match-end 0))))
  
--- 1053,1060 ----
                 (string-match "/" encoded-new-name
                             (- (length encoded-new-name) 99))
               (< (match-beginning 0) 155))
!       (unless (equal (tar-header-magic descriptor) "ustar\0")
!         (tar-alter-one-field tar-magic-offset "ustar\0\060\060"))
        (setq prefix (substring encoded-new-name 0 (match-beginning 0)))
        (setq encoded-new-name (substring encoded-new-name (match-end 0))))
  

reply via email to

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