Commit 0fdba3a8 by Jonathan Wakely Committed by Jonathan Wakely

PR65411 don't retry fclose on EINTR

	PR libstdc++/65411
	* config/io/basic_file_stdio.cc (__basic_file<char>::close()): Don't
	retry fclose on EINTR.

From-SVN: r244451
parent e3017e52
2017-01-13 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/65411
* config/io/basic_file_stdio.cc (__basic_file<char>::close()): Don't
retry fclose on EINTR.
* include/profile/base.h: Remove unused header that leads to header
cycle in C++17 mode.
......
......@@ -267,16 +267,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{
int __err = 0;
if (_M_cfile_created)
{
// In general, no need to zero errno in advance if checking
// for error first. However, C89/C99 (at variance with IEEE
// 1003.1, f.i.) do not mandate that fclose must set errno
// upon error.
errno = 0;
do
__err = fclose(_M_cfile);
while (__err && errno == EINTR);
}
__err = fclose(_M_cfile);
_M_cfile = 0;
if (!__err)
__ret = this;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment