diff --git a/src/stream_interface.c b/src/stream_interface.c index b55515901..8ad185497 100644 --- a/src/stream_interface.c +++ b/src/stream_interface.c @@ -838,7 +838,7 @@ void si_update_rx(struct stream_interface *si) else si_rx_chan_rdy(si); - if (!channel_is_empty(ic)) { + if (!channel_is_empty(ic) || !channel_may_recv(ic)) { /* stop reading, imposed by channel's policy or contents */ si_rx_room_blk(si); }