mirror of
https://github.com/fafhrd91/actix-web
synced 2024-11-30 10:42:55 +01:00
Fix buffer remaining capacity calcualtion
This commit is contained in:
parent
0c1f5f9edc
commit
5132257b0d
@ -1,11 +1,13 @@
|
|||||||
# Changes
|
# Changes
|
||||||
|
|
||||||
## [1.0.0-alpha.5] - 2019-12-xx
|
## [1.0.0-alpha.5] - 2019-12-09
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
* Check `Upgrade` service readiness before calling it
|
* Check `Upgrade` service readiness before calling it
|
||||||
|
|
||||||
|
* Fix buffer remaining capacity calcualtion
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
* Websockets: Ping and Pong should have binary data #1049
|
* Websockets: Ping and Pong should have binary data #1049
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "actix-http"
|
name = "actix-http"
|
||||||
version = "1.0.0-alpha.4"
|
version = "1.0.0-alpha.5"
|
||||||
authors = ["Nikolay Kim <fafhrd91@gmail.com>"]
|
authors = ["Nikolay Kim <fafhrd91@gmail.com>"]
|
||||||
description = "Actix http primitives"
|
description = "Actix http primitives"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
|
@ -8,7 +8,7 @@ use actix_codec::{AsyncRead, AsyncWrite, Decoder, Encoder, Framed, FramedParts};
|
|||||||
use actix_rt::time::{delay_until, Delay, Instant};
|
use actix_rt::time::{delay_until, Delay, Instant};
|
||||||
use actix_service::Service;
|
use actix_service::Service;
|
||||||
use bitflags::bitflags;
|
use bitflags::bitflags;
|
||||||
use bytes::{BufMut, BytesMut};
|
use bytes::BytesMut;
|
||||||
use log::{error, trace};
|
use log::{error, trace};
|
||||||
|
|
||||||
use crate::body::{Body, BodySize, MessageBody, ResponseBody};
|
use crate::body::{Body, BodySize, MessageBody, ResponseBody};
|
||||||
@ -751,8 +751,10 @@ where
|
|||||||
};
|
};
|
||||||
|
|
||||||
loop {
|
loop {
|
||||||
if inner.write_buf.remaining_mut() < LW_BUFFER_SIZE {
|
let remaining =
|
||||||
inner.write_buf.reserve(HW_BUFFER_SIZE);
|
inner.write_buf.capacity() - inner.write_buf.len();
|
||||||
|
if remaining < LW_BUFFER_SIZE {
|
||||||
|
inner.write_buf.reserve(HW_BUFFER_SIZE - remaining);
|
||||||
}
|
}
|
||||||
let result = inner.poll_response(cx)?;
|
let result = inner.poll_response(cx)?;
|
||||||
let drain = result == PollResponse::DrainWriteBuf;
|
let drain = result == PollResponse::DrainWriteBuf;
|
||||||
@ -863,8 +865,9 @@ where
|
|||||||
{
|
{
|
||||||
let mut read_some = false;
|
let mut read_some = false;
|
||||||
loop {
|
loop {
|
||||||
if buf.remaining_mut() < LW_BUFFER_SIZE {
|
let remaining = buf.capacity() - buf.len();
|
||||||
buf.reserve(HW_BUFFER_SIZE);
|
if remaining < LW_BUFFER_SIZE {
|
||||||
|
buf.reserve(HW_BUFFER_SIZE - remaining);
|
||||||
}
|
}
|
||||||
|
|
||||||
match read(cx, io, buf) {
|
match read(cx, io, buf) {
|
||||||
|
Loading…
Reference in New Issue
Block a user