ar: better comment
authorDenys Vlasenko <vda.linux@googlemail.com>
Tue, 10 Sep 2013 14:27:08 +0000 (16:27 +0200)
committerDenys Vlasenko <vda.linux@googlemail.com>
Tue, 10 Sep 2013 14:27:08 +0000 (16:27 +0200)
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
archival/libarchive/get_header_ar.c

index f655585fe6004506c05f2b4dc5b9eaa970cebe53..c66bb3ee73954b1f494a40fbd50ca8e6cf2f44a2 100644 (file)
@@ -59,6 +59,11 @@ char FAST_FUNC get_header_ar(archive_handle_t *archive_handle)
        if (ar.formatted.magic[0] != '`' || ar.formatted.magic[1] != '\n')
                bb_error_msg_and_die("invalid ar header");
 
+       /*
+        * Note that the fields MUST be read in reverse order as
+        * read_num() clobbers the next byte after the field!
+        * Order is: name, date, uid, gid, mode, size, magic.
+        */
        typed->size = size = read_num(ar.formatted.size, 10,
                                      sizeof(ar.formatted.size));
 
@@ -91,8 +96,6 @@ char FAST_FUNC get_header_ar(archive_handle_t *archive_handle)
        /* Only size is always present, the rest may be missing in
         * long filename pseudo file. Thus we decode the rest
         * after dealing with long filename pseudo file.
-        * Note that the fields MUST be read in reverse order as
-        * read_num() clobbers the next byte after the field!
         */
        typed->mode = read_num(ar.formatted.mode, 8, sizeof(ar.formatted.mode));
        typed->gid = read_num(ar.formatted.gid, 10, sizeof(ar.formatted.gid));