diff options
author | Julian Andres Klode <jak@debian.org> | 2015-12-28 04:09:55 +0100 |
---|---|---|
committer | Julian Andres Klode <jak@debian.org> | 2015-12-28 04:10:37 +0100 |
commit | 80f06991967d4daccb1c0c1147a6e16291ebb027 (patch) | |
tree | ba385ae12f637463c06fd10072c47d1536d8d235 | |
parent | 2ffd35359fffac0ae9ac1def06237324b7204c97 (diff) |
BufferedWriter: flushing: Check for written < size instead of <=
This avoids some issues with InternalWrite returning 0 because
it just cannot write stuff at the moment.
-rw-r--r-- | apt-pkg/contrib/fileutl.cc | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/apt-pkg/contrib/fileutl.cc b/apt-pkg/contrib/fileutl.cc index 71dfc83a2..0c5d76290 100644 --- a/apt-pkg/contrib/fileutl.cc +++ b/apt-pkg/contrib/fileutl.cc @@ -1222,12 +1222,10 @@ public: char *data = writebuffer.get(); auto size = writebuffer.size(); - while (written <= size) { + while (written < size) { auto written_this_time = wrapped->InternalWrite(data + written, size - written); if (written_this_time < 0) return false; - if (written_this_time == 0) - break; written += written_this_time; } |