Subject: [Boost-bugs] [Boost C++ Libraries] #2557: iostreams filtering_stream w/ gzip infinite loop when writing to a full drive
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2008-12-01 19:27:04
#2557: iostreams filtering_stream w/ gzip infinite loop when writing to a full
drive
----------------------------------------------------+-----------------------
Reporter: Tomasz Åniatowski <kailoran_at_[hidden]> | Owner: turkanis
Type: Bugs | Status: new
Milestone: Boost 1.38.0 | Component: iostreams
Version: Boost 1.37.0 | Severity: Problem
Keywords: |
----------------------------------------------------+-----------------------
When a filtering_stream with a gzip_compressor is used to write to a full
hard drive (i.e. insufficient free space), boost enters an infinite loop
in /boost/iostreams/detail/adapter/non_blocking_adapter.hpp:41 because the
write function keeps returning zero. This loop happens during the
destruction of the stream. I can't seem to find a client-side workaround.
Attached is a test case, point it to a volume with zero space and give
some large number of bytes. If there's insufficient space, execution
hangs. Tested on mingw/winxp/gcc4.2 but seems to fail on linux/gcc as
well.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/2557> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:49:59 UTC