X-Git-Url: https://git.sesse.net/?p=fjl;a=blobdiff_plain;f=input_test.c;h=3ff7ba097d657e4bab7100ea657b6702dc56d53d;hp=3f003d2bbc040fa3a435400350a37aadc55b602c;hb=56ceb8f3300b0ee121bddf572f935f87feedfea8;hpb=b6eb12684a5c1001cd80922700b393dd822de5d0 diff --git a/input_test.c b/input_test.c index 3f003d2..3ff7ba0 100644 --- a/input_test.c +++ b/input_test.c @@ -24,7 +24,7 @@ ssize_t custom_read(void* userdata, uint8_t* buf, size_t count) ssize_t custom_read_slow(void* userdata, uint8_t* buf, size_t count) { struct custom_read_userdata* ud = (struct custom_read_userdata*)userdata; - size_t num_to_read = (count > 0 ? 1 : 0); + size_t num_to_read = ((count > 0 && ud->bytes_left > 0) ? 1 : 0); memcpy(buf, ud->bytes, num_to_read); ud->bytes += num_to_read; ud->bytes_left -= num_to_read; @@ -39,8 +39,8 @@ void test_basic_reading() ud.bytes = bytes; ud.bytes_left = sizeof(bytes); - struct data_source source; - init_data_source(&source, custom_read, &ud); + struct bit_source source; + init_bit_source(&source, custom_read, &ud); for (int i = 0; i < sizeof(bytes) * 8 / 6; ++i) { possibly_refill(&source, 6); @@ -59,8 +59,8 @@ void test_slow_source() ud.bytes = bytes; ud.bytes_left = sizeof(bytes); - struct data_source source; - init_data_source(&source, custom_read_slow, &ud); + struct bit_source source; + init_bit_source(&source, custom_read_slow, &ud); for (int i = 0; i < sizeof(bytes) * 8 / 6; ++i) { possibly_refill(&source, 6); @@ -79,8 +79,8 @@ void test_variable_size() ud.bytes = bytes; ud.bytes_left = sizeof(bytes); - struct data_source source; - init_data_source(&source, custom_read, &ud); + struct bit_source source; + init_bit_source(&source, custom_read, &ud); { possibly_refill(&source, 4);