diff --git a/actix-multipart/Cargo.toml b/actix-multipart/Cargo.toml index 32ea49a24..6f631fcf1 100644 --- a/actix-multipart/Cargo.toml +++ b/actix-multipart/Cargo.toml @@ -24,7 +24,7 @@ httparse = "1.3" local-waker = "0.1" log = "0.4" mime = "0.3" -twoway = "0.2" +memchr = "2.5" [dev-dependencies] actix-rt = "2.2" diff --git a/actix-multipart/src/server.rs b/actix-multipart/src/server.rs index c3757177f..1d0510039 100644 --- a/actix-multipart/src/server.rs +++ b/actix-multipart/src/server.rs @@ -606,7 +606,7 @@ impl InnerField { } loop { - return if let Some(idx) = twoway::find_bytes(&payload.buf[pos..], b"\r") { + return if let Some(idx) = memchr::memmem::find(&payload.buf[pos..], b"\r") { let cur = pos + idx; // check if we have enough data for boundary detection @@ -827,7 +827,7 @@ impl PayloadBuffer { /// Read until specified ending fn read_until(&mut self, line: &[u8]) -> Result, MultipartError> { - let res = twoway::find_bytes(&self.buf, line) + let res = memchr::memmem::find(&self.buf, line) .map(|idx| self.buf.split_to(idx + line.len()).freeze()); if res.is_none() && self.eof {