Board logo

Subject: CnCRC32的BUG [Print This Page]

Author: moremay    Time: 2009-4-16 10:36     Subject: CnCRC32的BUG

此BUG好像一直存在,没人报告吗?
20090404版
CRC32Calc 函数
130     SHR     EAX, 8
131        AND     EAX, $00FFFFFF               // shr 是用0填补高位,多余?
132        XOR     EAX, [EBX + ESI]
TCRC32Table不是字节数组,EBX应该×4:
         XOR     EAX, [EBX*4 + ESI]
标号@Upd及@Exit前应该对CRC值异或
         XOR     EAX,-1
函数FileCRC32
187     CRC:=not CRC;
应该删除
Author: moremay    Time: 2009-4-16 10:39

2008-7-28的帖子http://bbs.cnpack.org/viewthread.php?tid=2178&extra=page%3D1
提到的与用Magic SFV & MD5校验出来的crc值不一样应该就是此BUG造成的
Author: Passion    Time: 2009-4-16 10:44

谢谢报告,我们检查一下。
Author: Passion    Time: 2009-4-16 16:00

的确如楼主所说,此段代码存在bug。

感谢报告,目前此问题已修正。楼主也进入我们的有贡献人员名单。




Welcome to CnPack Forum (http://bbs.cnpack.org/) Powered by Discuz! 5.0.0