This happens for example of the bit width is larger than 24bit so we need 4 byte to store the value or if the run is longer than 64 byte. Larger than 24bit bit width is not practically relevant for 1MiB dictionaries, however.
Can be reproduced with the run decoder example by running: ./run_decoder -e rle -l 64 -b 19 or ./run_decoder -e rle -l 8 -b 24.
This happens for example of the bit width is larger than 24bit so we need 4 byte to store the value or if the run is longer than 64 byte. Larger than 24bit bit width is not practically relevant for 1MiB dictionaries, however.
Can be reproduced with the run decoder example by running:
./run_decoder -e rle -l 64 -b 19or./run_decoder -e rle -l 8 -b 24.