aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Peter McGoron 2023-02-07 06:35:18 +0000
committerGravatar Peter McGoron 2023-02-07 06:35:18 +0000
commitaa1ed8a06eccac43ef1f81683b5e9f1d63c43a45 (patch)
tree324218c96deec14db5f64aedfe78e702af4daab0
parenttest encode and decode (diff)
fix parse_special_byte function
-rw-r--r--creole.c2
-rw-r--r--test_encode_decode.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/creole.c b/creole.c
index 3da1e3e..d29d25c 100644
--- a/creole.c
+++ b/creole.c
@@ -210,7 +210,7 @@ static int parse_special_byte(unsigned char c, struct word *w)
if (i >= SPECIAL_CONTINUE_BYTE_NUM)
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];
return 1;
}
diff --git a/test_encode_decode.c b/test_encode_decode.c
index e165e1e..fb0ba31 100644
--- a/test_encode_decode.c
+++ b/test_encode_decode.c
@@ -209,7 +209,7 @@ void encode_decode_byte_seq(creole_word max, unsigned encode_to, unsigned high_b
static void test_encode_decode(void) {
unsigned high_bits = 0;
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);