id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 6576,boost:::iostreams::file_descriptor throws instead of reading EOF on pipe,maihem@…,Jonathan Turkanis,"when using file_descriptor to read from a pipe on windows, an exception can be thrown if the write-side has broken the pipe - eg by exiting if it's another process. This is how I used the read-side of the pipe to trigger the failure (if you need a complete minimal sample including windows pipe and process handling code, please ask). I just used CreateProcess to start a cmd.exe shell script that echo'd a couple of lines to stdout. The pipe has less than the default buffer size written before the write side is closed: file_descriptor fd(pipe_read_side_handle); newline_filter nl(newline::posix); filtered_istream fs; fs.push(nl); fs.push(fd); string str; getline(fs, str); // fs.good() is now false // expected: fs.good() should be true here getline(fs, str); getline(fs, str); //... // eventually fs.eof() should be true getline(fs, str); // one more getline // then fs.fail() should be true. // I think there are a few different behaviours depending on // whether there is a trailing newline or not // but I think fs.badbit should not be set ",Bugs,closed,To Be Determined,iostreams,Boost 1.48.0,Problem,fixed,pipe read ReadFile CreatePipe,maihem@…