Fix crc32 code warning

This commit is contained in:
Alex Hultman
2023-04-15 22:39:10 +02:00
parent c5de72c9be
commit 3aae41687c
+11 -11
View File
@@ -15,19 +15,19 @@
#include <cstdint> #include <cstdint>
#include <cstddef> #include <cstddef>
uint32_t crc32(const char *s,size_t n, uint32_t crc=0xFFFFFFFF) { uint32_t crc32(const char *s, size_t n, uint32_t crc = 0xFFFFFFFF) {
for(size_t i=0;i<n;i++) { for (size_t i = 0; i < n; i++) {
char ch=s[i]; unsigned char ch = static_cast<unsigned char>(s[i]);
for(size_t j=0;j<8;j++) { for (size_t j = 0; j < 8; j++) {
uint32_t b=(ch^crc)&1; uint32_t b = (ch ^ crc) & 1;
crc>>=1; crc >>= 1;
if(b) crc=crc^0xEDB88320; if (b) crc = crc ^ 0xEDB88320;
ch>>=1; ch >>= 1;
} }
} }
return crc; return crc;
} }
int main() { int main() {