lib/yajl/ParseInputStream: eliminate variable "done"

This commit is contained in:
Max Kellermann 2018-01-11 20:09:52 +01:00
parent 26b1573cbe
commit 5913994169

View File

@ -27,17 +27,14 @@ Yajl::ParseInputStream(Handle &handle, InputStream &is)
{ {
const std::lock_guard<Mutex> protect(is.mutex); const std::lock_guard<Mutex> protect(is.mutex);
bool done = false; while (true) {
while (!done) {
unsigned char buffer[4096]; unsigned char buffer[4096];
const size_t nbytes = is.Read(buffer, sizeof(buffer)); const size_t nbytes = is.Read(buffer, sizeof(buffer));
if (nbytes == 0) if (nbytes == 0)
done = true; break;
if (done) { handle.Parse(buffer, nbytes);
handle.CompleteParse();
} else
handle.Parse(buffer, nbytes);
} }
handle.CompleteParse();
} }