binary and C++ API not compatible
Compiling example 3.4.3 from the manual succeeds (after fixing argv_ indices on lines 12 and 13) and the resulting binary compresses a test file. The binary produced by compiling example 3.4.4 can decompress this file to produce output identical to the original. However, decompressing using the main 'dsrc' binary produces corrupted output with null bytes scattered throughout.
I am using a 64-bit Linux OS. I compiled the test programs using gcc 4.9.2 with the same flags used in the Makefile for the main binary. Is this a platform-specific bug or can anyone else reproduce it?
Thanks for report! Now the C++ library API is getting slightly changed, extending the available functionality. The problem you are mentioning should not occur even in the current version - I'll take a closer look into that.
There was a bug in the DSRC library when compressing FASTQ data record-by-record. The size of internal FASTQ block buffer was saved one byte too large, resulting in adding extra invalid information to the output FASTQ file when decompressing.
It has been fixed in 3d8de3f52efb653347c68d86d65ddcfc7cfb08f1 in the devel branch.
In 3d8de3f52efb653347c68d86d65ddcfc7cfb08f1 also simple unit tests have been added in test/test_dsrc_cpplib.py to perform the compatibility check between generated archives and decompressed FASTQ files.
Could you please check whether the bug still occurs in your case?
Thanks, works well now.
Great, thanks. I'll close the issue once the changes from devel branch are integrated into the master.