Fixed wrong n_mru storage in putPackHeader().

committer: mfx <mfx> 1088541728 +0000
This commit is contained in:
Markus F.X.J. Oberhumer 2004-06-29 20:42:08 +00:00
parent 51106e730b
commit 603dc83c1a

View File

@ -150,7 +150,8 @@ void PackHeader::putPackHeader(upx_bytep p)
set_le32(p+24,u_file_size);
p[28] = (unsigned char) filter;
p[29] = (unsigned char) filter_cto;
p[30] = (unsigned char) (n_mru ? 0 : n_mru -1);
assert(n_mru == 0 || (n_mru >= 2 && n_mru <= 256));
p[30] = (unsigned char) (n_mru ? n_mru - 1 : 0);
}
set_le32(p+8,u_adler);
set_le32(p+12,c_adler);
@ -166,7 +167,8 @@ void PackHeader::putPackHeader(upx_bytep p)
set_be32(p+24,u_file_size);
p[28] = (unsigned char) filter;
p[29] = (unsigned char) filter_cto;
p[30] = (unsigned char) (n_mru ? 0 : n_mru -1);
assert(n_mru == 0 || (n_mru >= 2 && n_mru <= 256));
p[30] = (unsigned char) (n_mru ? n_mru - 1 : 0);
}
p[4] = (unsigned char) version;
@ -246,7 +248,7 @@ bool PackHeader::fillPackHeader(const upx_bytep buf, int blen)
u_file_size = get_le32(p+24);
off_filter = 28;
filter_cto = p[29];
n_mru = p[30] ? 1+ p[30] : 0;
n_mru = p[30] ? 1 + p[30] : 0;
}
}
else
@ -258,7 +260,7 @@ bool PackHeader::fillPackHeader(const upx_bytep buf, int blen)
u_file_size = get_be32(p+24);
off_filter = 28;
filter_cto = p[29];
n_mru = p[30] ? 1+ p[30] : 0;
n_mru = p[30] ? 1 + p[30] : 0;
}
if (version >= 10)