From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Mon, 24 Dec 2012 16:05:23 +0400 From: Alexey Tourbin To: ALT Linux Sisyphus mailing list Message-ID: <20121224120523.GA13879@altlinux.org> Mail-Followup-To: ALT Linux Sisyphus mailing list References: <20121224095509.GJ5224@osdn.org.ua> <20121224112809.GA13850@altlinux.org> Mime-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20121224112809.GA13850@altlinux.org> Subject: Re: [sisyphus] i586 rpm setversions regression X-BeenThere: sisyphus@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Sisyphus discussions List-Id: ALT Linux Sisyphus discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 Dec 2012 12:05:24 -0000 Archived-At: List-Archive: List-Post: On Mon, Dec 24, 2012 at 03:28:09PM +0400, Dmitry V. Levin wrote: > On Mon, Dec 24, 2012 at 11:55:09AM +0200, Michael Shigorin wrote: > > Здравствуйте. > > Это одного меня так накрыло? > > Похоже на > http://lists.altlinux.org/pipermail/sisyphus-incominger/2012-December/334059.html > т.е. set.c в rpm на i586 сломался на ровном месте. [builder@people ~]$ /usr/lib/rpm/setcmp set:kdSxWgTyZxEcQx104N1sOQPFrBU4hMyJgswBQdypWl99UkQfZ7FfVfLes8xXStDq2ZBO04AhAjro2klgZ3IPusa9PpeHQCT4xiF5vDAsf0PvkfkbHFKHGGYt7lk6gVuQUZg05tAONMVt1 set:jhK9a5Z0 -2 [builder@people ~]$ Похоже на проблему перекодирования в меньшую битность (в данном случае set:k > set:j). Кажется, нашел ошибку, только теперь не знаю, как проверить - хешер не заводится. --- lib/set.c- +++ lib/set.c @@ -1107,8 +1107,8 @@ int rpmsetcmp(const char *str1, const ch int c1 = cache_decode_set(str1, Mshift1, &v1); if (c1 < 0) return -3; - unsigned v1bufA[c1 + 1]; - unsigned v1bufB[c1 + 1]; + unsigned v1bufA[c1 + SENTINELS]; + unsigned v1bufB[c1 + SENTINELS]; // decode set2 (on the stack) int len2 = strlen(str2); int c2 = decode_set_size(len2, Mshift2);