In Record3DStream destructor, the preallocated buffer for LZ decompression was destroyed without waiting for the processing thread to complete, i.e. the buffer was potentially still in use. This leads to crashes on Record3DStream destructions. This has been fixed by explicitely waiting for the thread to quit before destroying the buffer. For this I had to reverse the detachment of the thread to keep it joinable, I hope I did not missed something.
In Record3DStream destructor, the preallocated buffer for LZ decompression was destroyed without waiting for the processing thread to complete, i.e. the buffer was potentially still in use. This leads to crashes on Record3DStream destructions. This has been fixed by explicitely waiting for the thread to quit before destroying the buffer. For this I had to reverse the detachment of the thread to keep it joinable, I hope I did not missed something.