emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] emacs/lisp ChangeLog tar-mode.el


From: Stefan Monnier
Subject: [Emacs-diffs] emacs/lisp ChangeLog tar-mode.el
Date: Sat, 17 Oct 2009 04:36:15 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Stefan Monnier <monnier>        09/10/17 04:36:14

Modified files:
        lisp           : ChangeLog tar-mode.el 

Log message:
        (tar-data-swapped-p): Make the assertion a bit more
        permissive for when the buffer is empty.
        (tar-header-block-tokenize): Decode the username and groupname.
        (tar-chown-entry, tar-chgrp-entry): Encode the names (bug#4730).

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/ChangeLog?cvsroot=emacs&r1=1.16448&r2=1.16449
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/tar-mode.el?cvsroot=emacs&r1=1.141&r2=1.142

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/emacs/emacs/lisp/ChangeLog,v
retrieving revision 1.16448
retrieving revision 1.16449
diff -u -b -r1.16448 -r1.16449
--- ChangeLog   17 Oct 2009 04:18:31 -0000      1.16448
+++ ChangeLog   17 Oct 2009 04:36:11 -0000      1.16449
@@ -1,3 +1,10 @@
+2009-10-17  Stefan Monnier  <address@hidden>
+
+       * tar-mode.el (tar-data-swapped-p): Make the assertion a bit more
+       permissive for when the buffer is empty.
+       (tar-header-block-tokenize): Decode the username and groupname.
+       (tar-chown-entry, tar-chgrp-entry): Encode the names (bug#4730).
+
 2009-10-17  Chong Yidong  <address@hidden>
 
        * cedet/srecode/srt.el:
@@ -13,8 +20,8 @@
        (semantic-analyze-scoped-inherited-tag-map): Wrap calculation of
        tmpscope so that the regular scope will continue to work.
 
-       * cedet/semantic/idle.el (semantic-idle-tag-highlight): Use
-       semantic-idle-summary-highlight-face as the highlighting.
+       * cedet/semantic/idle.el (semantic-idle-tag-highlight):
+       Use semantic-idle-summary-highlight-face as the highlighting.
 
        * emacs-lisp/eieio-base.el (eieio-persistent-save): If buffer
        contains multibyte characters, choose first applicable coding
@@ -40,12 +47,11 @@
 
        * cedet/ede/proj-prog.el (project-run-target): New method.
 
-       * cedet/ede/proj-obj.el (ede-cc-linker): Rename from
-       ede-gcc-linker.
+       * cedet/ede/proj-obj.el (ede-cc-linker): Rename from ede-gcc-linker.
        (ede-g++-linker): Change Change link lines.
 
-       * cedet/ede/pmake.el (ede-pmake-insert-variable-shared): When
-       searching for old variables, go to the end of the buffer and
+       * cedet/ede/pmake.el (ede-pmake-insert-variable-shared):
+       When searching for old variables, go to the end of the buffer and
        search backward from there.
        (ede-proj-makefile-automake-insert-subdirs)
        (ede-proj-makefile-automake-insert-extradist): New methods.
@@ -56,16 +62,16 @@
        check that it exists.
 
        * cedet/ede/linux.el (ede-linux-version): Don't call "head".
-       (ede-linux-load): Wrap dir in file-name-as-directory.  Set
-       :version slot.
+       (ede-linux-load): Wrap dir in file-name-as-directory.
+       Set :version slot.
 
        * cedet/ede/files.el (ede-get-locator-object): When enabling
        locate, do so on "top".
 
        * cedet/ede/emacs.el (ede-emacs-file-existing): Wrap "dir" in
        file-name-as-directory during compare.
-       (ede-emacs-version): Return Emacs/XEmacs differentiator.  Get
-       version number from different places.  Don't call egrep.
+       (ede-emacs-version): Return Emacs/XEmacs differentiator.
+       Get version number from different places.  Don't call egrep.
        (ede-emacs-load): Set :version slot.  Call file-name-as-directory
        to set the directory.
 

Index: tar-mode.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/tar-mode.el,v
retrieving revision 1.141
retrieving revision 1.142
diff -u -b -r1.141 -r1.142
--- tar-mode.el 3 Sep 2009 06:55:01 -0000       1.141
+++ tar-mode.el 17 Oct 2009 04:36:14 -0000      1.142
@@ -171,8 +171,9 @@
        ;; state correctly: the raw data is expected to be always larger than
        ;; the summary.
        (progn
-        (assert (eq tar-data-swapped
-                    (> (buffer-size tar-data-buffer) (buffer-size))))
+        (assert (or (= (buffer-size tar-data-buffer) (buffer-size))
+                     (eq tar-data-swapped
+                         (> (buffer-size tar-data-buffer) (buffer-size)))))
         tar-data-swapped)))
 
 (defun tar-swap-data ()
@@ -312,8 +313,12 @@
            link-p
            linkname
            uname-valid-p
-           (and uname-valid-p (substring string tar-uname-offset uname-end))
-           (and uname-valid-p (substring string tar-gname-offset gname-end))
+           (when uname-valid-p
+             (decode-coding-string
+              (substring string tar-uname-offset uname-end) coding))
+           (when uname-valid-p
+             (decode-coding-string
+              (substring string tar-gname-offset gname-end) coding))
            (tar-parse-octal-integer string tar-dmaj-offset tar-dmin-offset)
            (tar-parse-octal-integer string tar-dmin-offset tar-prefix-offset)
            ))))))
@@ -1013,7 +1018,10 @@
         (read-string "New UID string: " (tar-header-uname descriptor))))))
   (cond ((stringp new-uid)
         (setf (tar-header-uname (tar-current-descriptor)) new-uid)
-        (tar-alter-one-field tar-uname-offset (concat new-uid "\000")))
+        (tar-alter-one-field tar-uname-offset
+                              (concat (encode-coding-string
+                                       new-uid tar-file-name-coding-system)
+                                      "\000")))
        (t
         (setf (tar-header-uid (tar-current-descriptor)) new-uid)
         (tar-alter-one-field tar-uid-offset
@@ -1039,7 +1047,9 @@
   (cond ((stringp new-gid)
         (setf (tar-header-gname (tar-current-descriptor)) new-gid)
         (tar-alter-one-field tar-gname-offset
-          (concat new-gid "\000")))
+                              (concat (encode-coding-string
+                                       new-gid tar-file-name-coding-system)
+                                      "\000")))
        (t
         (setf (tar-header-gid (tar-current-descriptor)) new-gid)
         (tar-alter-one-field tar-gid-offset




reply via email to

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