diff options
Diffstat (limited to 'crates/shirabe/src/downloader/gzip_downloader.rs')
| -rw-r--r-- | crates/shirabe/src/downloader/gzip_downloader.rs | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/crates/shirabe/src/downloader/gzip_downloader.rs b/crates/shirabe/src/downloader/gzip_downloader.rs index 2a485de..4ee9d33 100644 --- a/crates/shirabe/src/downloader/gzip_downloader.rs +++ b/crates/shirabe/src/downloader/gzip_downloader.rs @@ -29,12 +29,12 @@ pub struct GzipDownloader { impl GzipDownloader { pub fn new( io: Box<dyn IOInterface>, - config: Config, - http_downloader: HttpDownloader, + config: std::rc::Rc<std::cell::RefCell<Config>>, + http_downloader: std::rc::Rc<std::cell::RefCell<HttpDownloader>>, event_dispatcher: Option<EventDispatcher>, cache: Option<Cache>, - filesystem: Filesystem, - process: ProcessExecutor, + filesystem: std::rc::Rc<std::cell::RefCell<Filesystem>>, + process: std::rc::Rc<std::cell::RefCell<ProcessExecutor>>, ) -> Self { Self { inner: FileDownloader::new( @@ -80,7 +80,7 @@ impl GzipDownloader { ]; let mut process_output = PhpMixed::Null; - if self.inner.process.execute( + if self.inner.process.borrow_mut().execute( PhpMixed::List( command .iter() @@ -102,7 +102,7 @@ impl GzipDownloader { let process_error = format!( "Failed to execute {}\n\n{}", implode(" ", &command), - self.inner.process.get_error_output(), + self.inner.process.borrow().get_error_output(), ); return Err(anyhow::anyhow!(RuntimeException { message: process_error, |
