X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/rsbs2/blobdiff_plain/b4de99235c55fea1a73a8fe763d5c37830e07a08..2363a0d6a8cf44f7288e0795ff29e081ecf3a08f:/rsb-crc.c diff --git a/rsb-crc.c b/rsb-crc.c index 719d682..8c8fbbe 100644 --- a/rsb-crc.c +++ b/rsb-crc.c @@ -116,9 +116,7 @@ unsigned int rsb_crc(unsigned int r11_crc, unsigned char *r10_buf, unsigned int */ unsigned int rsb_crc2(unsigned char *r0_buf, unsigned int r1_buflen, unsigned int r2_magic, unsigned int *crc_out) { - int r8_ret = 1; unsigned int r4_len; - unsigned int r5_crc; unsigned int file_crc; r4_len = *(unsigned int*)(r0_buf + 0x20); @@ -129,15 +127,12 @@ unsigned int rsb_crc2(unsigned char *r0_buf, unsigned int r1_buflen, unsigned in if (r1_buflen < r4_len) return 3; /* image to small */ - r8_ret = 4; - - r5_crc = ~rsb_crc(~0x0, r0_buf, r4_len); - *crc_out = r5_crc; + *crc_out = ~rsb_crc(~0x0, r0_buf, r4_len); file_crc = *((unsigned int*)(r0_buf + r4_len)); - if (file_crc == r5_crc) - r8_ret = 0; + if (file_crc != *crc_out) + return 4; - return r8_ret; + return 0; }