Avoid cloning a request on send
This commit is contained in:
parent
54dc2f8107
commit
0300dbdeb3
1 changed files with 6 additions and 4 deletions
|
@ -127,11 +127,13 @@ impl Transport {
|
|||
async fn send_payload_to_server(
|
||||
&self,
|
||||
server_stdin: &mut Box<dyn AsyncWrite + Unpin + Send>,
|
||||
req: Request,
|
||||
mut req: Request,
|
||||
) -> Result<()> {
|
||||
let json = serde_json::to_string(&Payload::Request(req.clone()))?;
|
||||
if let Some(back) = req.back_ch {
|
||||
self.pending_requests.lock().await.insert(req.seq, back);
|
||||
let back_ch = req.back_ch.take();
|
||||
let seq = req.seq;
|
||||
let json = serde_json::to_string(&Payload::Request(req))?;
|
||||
if let Some(back) = back_ch {
|
||||
self.pending_requests.lock().await.insert(seq, back);
|
||||
}
|
||||
self.send_string_to_server(server_stdin, json).await
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue