diff --git a/src/stream_interface.c b/src/stream_interface.c index b7a0682e6..26061d973 100644 --- a/src/stream_interface.c +++ b/src/stream_interface.c @@ -498,7 +498,7 @@ void stream_int_notify(struct stream_interface *si) */ if (!channel_is_empty(ic) && (si_opposite(si)->flags & SI_FL_WAIT_DATA) && - (ci_data(ic) == 0 || ic->pipe)) { + (!(ic->flags & CF_EXPECT_MORE) || c_full(ic) || ci_data(ic) == 0 || ic->pipe)) { int new_len, last_len; last_len = co_data(ic);