If a readable stream was set up with `highWaterMark 0`, the while-loop
in `maybeReadMore_` function would never execute.
The while loop now has an extra or-condition for the case where the
stream is flowing and there are no items. The or-condition is adapted
from the emit-condition of the `addChunk` function.
The `addChunk` also contains a check for `state.sync`. However that part
of the check was omitted here because the `maybeReadMore_` is executed
using `process.nextTick`. `state.sync` is set and then unset within the
`read()` function so it should never be in effect in `maybeReadMore_`.
Fixes: https://github.com/nodejs/node/issues/24915
PR-URL: https://github.com/nodejs/node/pull/24918
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>