add a ReleaseCapacityTooBig variant to UserError

This commit is contained in:
Sean McArthur
2017-09-06 11:53:30 -07:00
committed by Carl Lerche
parent 452e49dc3e
commit 09744f38ef
2 changed files with 6 additions and 2 deletions

View File

@@ -37,6 +37,9 @@ pub enum UserError {
/// The application attempted to initiate too many streams to remote.
Rejected,
/// The released capacity is larger than claimed capacity.
ReleaseCapacityTooBig,
}
// ===== impl RecvError =====
@@ -109,6 +112,7 @@ impl error::Error for UserError {
UnexpectedFrameType => "unexpected frame type",
PayloadTooBig => "payload too big",
Rejected => "rejected",
ReleaseCapacityTooBig => "release capacity too big",
}
}
}

View File

@@ -215,9 +215,9 @@ impl<B, P> Recv<B, P>
-> Result<(), UserError>
{
trace!("release_capacity; size={}", capacity);
if capacity > stream.in_flight_recv_data {
// TODO: Handle error
unimplemented!();
return Err(UserError::ReleaseCapacityTooBig);
}
// Decrement in-flight data