On Monday 24 January 2011 21:53:50 Thomas Schmitt wrote:

Hi,

(I changed the bug address to 610783@ as this is the bug we are talking about 
now)

> it seems the immediate reason is in
>   libarchive/archive_read_support_format_iso9660.c:read_entries()
> which iterates over
>   next_entry(iso9660)
> until a NULL or a non-directory appears.
> 
> With an image created by
>    mount -o loop /reiser/p/v/debian-squeeze-di-rc2-i386-businesscard.iso
> /mnt genisoimage -o debian-businesscard-genisoimage.iso \
>                -allow-leading-dots -J -R -graft-points /=/mnt
> i first see all 158 directories being enumerated and
> only then come the other files.
> With the image from xorriso i see the symbolic link 'debian' as second
> item, which ends the loop. After a few more directories comes the first
> regular file.
> 
> The iteration sequence with the image from genisoimage is _not_ the
> sequence of directory entries in that image.
> At least in the root directory the sequences of directory entries
> are the same in both images.
> 
> So next i will have to find out what determines the iteration sequence.
> But first i need some calories.

At the head of that source file I read:

 * This module works by first reading the volume descriptors, then
 * building a list of directory entries, sorted by starting
 * sector.  At each step, I look for the earliest dir entry that
 * hasn't yet been read, seek forward to that location and read
 * that entry.  If it's a dir, I slurp in the new dir entries and
 * add them to the heap; if it's a regular file, I return the
 * corresponding archive_entry and wait for the client to request
 * the file body.  This strategy allows us to read most compliant
 * CDs with a single pass through the data, as required by libarchive.

This entry sequencing smells as an assumption to me. I'm not aware ECMA-119 to 
stipulate something like that. Am I missing something?

-- 
pub 4096R/0E4BD0AB <people.fccf.net/danchev/key pgp.mit.edu>



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to