Streams receiving peer reset clear pending send (#238)
Because streams that were being peer reset were not clearing pending send frames / buffered_send_data, they were not being counted towards the concurrency limit.
This commit is contained in:
committed by
Sean McArthur
parent
267789da92
commit
f8baeb7211
@@ -255,10 +255,14 @@ where
|
||||
},
|
||||
};
|
||||
|
||||
let mut send_buffer = self.send_buffer.inner.lock().unwrap();
|
||||
let send_buffer = &mut *send_buffer;
|
||||
|
||||
let actions = &mut me.actions;
|
||||
|
||||
me.counts.transition(stream, |_, stream| {
|
||||
actions.recv.recv_reset(frame, stream)?;
|
||||
actions.recv.recv_reset(frame, stream);
|
||||
actions.send.recv_reset(send_buffer, stream);
|
||||
assert!(stream.state.is_closed());
|
||||
Ok(())
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user