mirror of
https://github.com/fumiama/base16384.git
synced 2026-06-09 20:50:26 +08:00
fix: 32bit be decoding
This commit is contained in:
@@ -194,7 +194,11 @@ int base16384_decode(const char* data, int dlen, char* buf, int blen) {
|
||||
if(offset--) {
|
||||
buf[i] = (sum & 0x0f000000) >> 20;
|
||||
// 这里有读取越界
|
||||
sum = vals[n];
|
||||
#ifdef WORDS_BIGENDIAN
|
||||
sum = __builtin_bswap32(vals[n]);
|
||||
#else
|
||||
sum = vals[n];
|
||||
#endif
|
||||
sum -= 0x0000004e;
|
||||
buf[i++] |= (sum & 0x0000003c) >> 2;
|
||||
if(offset--) {
|
||||
|
||||
Reference in New Issue
Block a user