id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 3348,SEGV in ~bzip2_decompressor(),basilevs@…,Jonathan Turkanis,"Destructor of unused bzip2_decompressor instance causes segmentation violation. Function bzip2_base::end() is called from destructor without checking whether function bzip2_base::do_init() was called earlier. This causes a call to BZ2_bzDecompressEnd(s) without preceding call to BZ2_bzDecompressInit(s, 0, params_.small). The problem appears with bzip2-1.0.5 compiled with mingw (gcc (GCC) 3.4.5 (mingw-vista special r3)). A quick fix for this problem would be a test for !ready_ before calling of any BZ2_bz*compressEnd(s) functions. I've added the line if (!ready_) return; in the very beginning of function void bzip2_base::end(bool compress) in bzip2.cpp and SEGVs dissapeared. A patch is attached. Beware incorrect directory naming in the patch file. ",Bugs,closed,Boost 1.40.0,iostreams,Boost 1.39.0,Problem,fixed,,