From: Ian Jackson Date: Sun, 2 May 2021 22:57:32 +0000 (+0100) Subject: cmdlistener: Change type of bulk_download X-Git-Tag: otter-0.6.0~465 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=8627a8209bd27fa38c0e29a393191fc8b47cfc57;p=otter.git cmdlistener: Change type of bulk_download Signed-off-by: Ian Jackson --- diff --git a/daemon/cmdlistener.rs b/daemon/cmdlistener.rs index 606b699e..b85f7ff4 100644 --- a/daemon/cmdlistener.rs +++ b/daemon/cmdlistener.rs @@ -80,9 +80,7 @@ fn execute_and_respond(cs: &mut CommandStreamData, cmd: MgmtCommand, -> Result<(), CSE> where R: Read, W: Write { - let /*mut*/ bulk_download: - &mut dyn FnMut(&mut dyn Write) -> Result<(),MgmtChannelWriteError> - = &mut |_| Ok(()); + let /*mut*/ bulk_download: Option> = None; let mut cmd_s = log_enabled!(log::Level::Info) .as_some_from(|| format!("{:?}", &cmd)) @@ -329,7 +327,9 @@ fn execute_and_respond(cs: &mut CommandStreamData, cmd: MgmtCommand, }; let mut wf = for_response.write_withbulk(&resp).context("respond")?; - bulk_download(&mut wf).context("download")?; + if let Some(mut bulk_download) = bulk_download { + io::copy(&mut bulk_download, &mut wf).context("download")?; + } wf.finish().context("flush")?; Ok(()) }