mirror of
https://github.com/telemt/telemt.git
synced 2026-10-11 03:45:58 +03:00
Hardswap Invariants in tests + Quota fixes
This commit is contained in:
@@ -22,6 +22,9 @@ impl WebSession {
|
||||
if self.carrier() != WebCarrier::HttpsLanes || lane_id > frame::MAX_STREAM_ID {
|
||||
return Err(ManagerError::Protocol);
|
||||
}
|
||||
if self.close_if_cancelled() {
|
||||
return Err(ManagerError::Closed);
|
||||
}
|
||||
let frames = match frame::parse_all(body, &self.limits) {
|
||||
Ok(frames) => frames,
|
||||
Err(_) => {
|
||||
@@ -175,6 +178,10 @@ impl WebSession {
|
||||
if matches!(result, Err(ManagerError::Backpressure)) {
|
||||
return result;
|
||||
}
|
||||
if matches!(result, Err(ManagerError::Closed)) && self.close_if_cancelled() {
|
||||
drop(opened);
|
||||
return result;
|
||||
}
|
||||
if result.is_err() {
|
||||
self.close(SessionCloseReason::Protocol);
|
||||
drop(opened);
|
||||
|
||||
Reference in New Issue
Block a user