fix parse_special_byte function

This commit is contained in:
Peter McGoron 2023-02-07 06:35:18 +00:00
parent 7239582251
commit aa1ed8a06e
2 changed files with 2 additions and 2 deletions

View File

@ -210,7 +210,7 @@ static int parse_special_byte(unsigned char c, struct word *w)
if (i >= SPECIAL_CONTINUE_BYTE_NUM) if (i >= SPECIAL_CONTINUE_BYTE_NUM)
return 0; return 0;
w->high_bits = (w->high_bits << i) | ((c >> (5 - i)) & mask[i]); w->high_bits = (w->high_bits << (i + 1)) | ((c >> (5 - i)) & mask[i]);
w->word = c & wordmask[i]; w->word = c & wordmask[i];
return 1; return 1;
} }

View File

@ -209,7 +209,7 @@ void encode_decode_byte_seq(creole_word max, unsigned encode_to, unsigned high_b
static void test_encode_decode(void) { static void test_encode_decode(void) {
unsigned high_bits = 0; unsigned high_bits = 0;
int encode_len; int encode_len;
creole_word maxima[6] = {0x7F, 0xFFF, 0x1FFFF, 0x3FFFFF, 0x7FFFFFF, 0xFFFFFFFF}; const creole_word maxima[6] = {0x7F, 0xFFF, 0x1FFFF, 0x3FFFFF, 0x7FFFFFF, 0xFFFFFFFF};
encode_decode_byte_seq(0x7F, 1, 0); encode_decode_byte_seq(0x7F, 1, 0);