Mercurial > irccd
changeset 200:1099568ef450
Irccd: do not loop on std::feof
author | David Demelier <markand@malikania.fr> |
---|---|
date | Wed, 08 Jun 2016 20:26:00 +0200 |
parents | 15ad726db5c8 |
children | 75bc436b8b3f |
files | lib/irccd/mod-file.cpp |
diffstat | 1 files changed, 1 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/lib/irccd/mod-file.cpp Wed Jun 08 19:59:00 2016 +0200 +++ b/lib/irccd/mod-file.cpp Wed Jun 08 20:26:00 2016 +0200 @@ -259,9 +259,7 @@ std::array<char, 128> buffer; std::size_t nread; - while (!std::feof(file->handle())) { - nread = std::fread(&buffer[0], sizeof (buffer[0]), buffer.size(), file->handle()); - + while ((nread = std::fread(&buffer[0], sizeof (buffer[0]), buffer.size(), file->handle())) > 0) { if (std::ferror(file->handle())) dukx_throw(ctx, SystemError());