On Thu, Dec 27, 2012 at 10:08:07PM +0100, Abou Al Montacir wrote:
> +             if (r == XZ_STREAM_END) {
> +                     /* Eat padding. Stream never starts with zeros, and 
> padding is 32 aligned */
> +                     while ((iobuf.in_pos < iobuf.in_size) && 
> (iobuf.in[iobuf.in_pos] == 0)) {
> +                                     iobuf.in_pos += 1;
> +                     }
> +                     /* Reached end of buffer. Fill it again from stream */
> +                     if (iobuf.in_pos == iobuf.in_size) {
> +                             continue;
> +                     }
> +                     if(iobuf.in_pos % 4){

Are you sure this is correct? in_pos is the position in tht buffer, not
the file. Also look out for coding style.

> +             if (r == XZ_STREAM_END) {

Again the same check?

>               if (r == XZ_STREAM_END) {
> -                     break;
> +                     xz_dec_end(state);
> +                     /* Look for any other streams */
> +                     continue;

Why do you have three XZ_STREAM_END checks in this state machine?

Bastian

-- 
There are always alternatives.
                -- Spock, "The Galileo Seven", stardate 2822.3


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

Reply via email to