From: Michael Schroeder Date: Thu, 19 Dec 2019 15:28:38 +0000 (+0100) Subject: Fix solv_zchunk decoding error if large chunks are used X-Git-Tag: 0.7.11~10 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a7cbcc3a5cfae21afc6bd95e3907da7b276c17bd;p=thirdparty%2Flibsolv.git Fix solv_zchunk decoding error if large chunks are used Oops. This commit is a bit embarassing. --- diff --git a/ext/solv_zchunk.c b/ext/solv_zchunk.c index 664b739b..ba3d7947 100644 --- a/ext/solv_zchunk.c +++ b/ext/solv_zchunk.c @@ -75,12 +75,12 @@ getuint(unsigned char *p, unsigned char *endp, unsigned int *dp) } if (++p < endp && (*p & 0x80) != 0) { - *dp = p[-3] ^ (p[-2] << 7) ^ (p[1] << 14) ^ ((p[0] ^ 0x80) << 21); + *dp = p[-3] ^ (p[-2] << 7) ^ (p[-1] << 14) ^ ((p[0] ^ 0x80) << 21); return p + 1; } if (++p < endp && (*p & 0xf0) == 0x80) { - *dp = p[-4] ^ (p[-3] << 7) ^ (p[2] << 14) ^ (p[1] << 21) ^ ((p[0] ^ 0x80) << 28); + *dp = p[-4] ^ (p[-3] << 7) ^ (p[-2] << 14) ^ (p[-1] << 21) ^ ((p[0] ^ 0x80) << 28); return p + 1; } return 0; diff --git a/package/libsolv.changes b/package/libsolv.changes index c8af86b7..dfca0c5f 100644 --- a/package/libsolv.changes +++ b/package/libsolv.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Thu Dec 19 16:29:52 CET 2019 - mls@suse.de + +- fix solv_zchunk decoding error if large chunks are used + [bnc#1159314] + ------------------------------------------------------------------- Tue Dec 10 21:02:31 CET 2019 - mls@suse.de