:: commit 4e4225be5a2e5c4e9fd5f9e85d873df151d9fb19

Kamila Szewczyk <kspalaiologos@gmail.com> — 2022-05-07 13:57

parents: 9770d030d0

final fixes

diff --git a/src/libbz3.c b/src/libbz3.c
index e89f723..7bdb3cf 100644
--- a/src/libbz3.c
+++ b/src/libbz3.c
@@ -273,10 +273,12 @@ typedef struct {
 
 static void bz3_init_encode_thread(encode_thread_msg * msg) {
     msg->size = bz3_encode_block(msg->state, msg->buffer, msg->size);
+    pthread_exit(NULL);
 }
 
 static void bz3_init_decode_thread(decode_thread_msg * msg) {
     bz3_decode_block(msg->state, msg->buffer, msg->size, msg->orig_size);
+    pthread_exit(NULL);
 }
 
 void bz3_encode_blocks(struct bz3_state * states[], uint8_t * buffers[], int32_t sizes[], int32_t n) {
diff --git a/src/main.c b/src/main.c
index f8e5c26..d0edaf7 100644
--- a/src/main.c
+++ b/src/main.c
@@ -294,7 +294,7 @@ int main(int argc, char * argv[]) {
                     size_t read_count = fread(buffers[i], 1, block_size, input_des);
                     sizes[i] = old_sizes[i] = read_count;
                     if(read_count < block_size)
-                        break;
+                        { i++; break; }
                 }
                 bz3_encode_blocks(states, buffers, sizes, i);
                 for(s32 j = 0; j < i; j++) {
tab: 248 wrap: offon