diff options
| author | Yuki Okushi <huyuumi.dev@gmail.com> | 2021-01-21 20:04:51 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-01-21 20:04:51 +0900 |
| commit | 0aeb2fcba1370e820863b10af5db3cf1013adbe1 (patch) | |
| tree | 3abbc2bb04ae0e23b1d840c9027b6d00f12fc313 /src/librustdoc/html/render | |
| parent | b76f0f92abd84fa30913c79e93d92ebd13bfb229 (diff) | |
| parent | d926147ccbd9bda51a5f0754f62811c0699621e5 (diff) | |
| download | rust-0aeb2fcba1370e820863b10af5db3cf1013adbe1.tar.gz rust-0aeb2fcba1370e820863b10af5db3cf1013adbe1.zip | |
Rollup merge of #81184 - jyn514:combine-after, r=CraftSpider
Remove unnecessary `after_run` function It's called at the same time and in the same place as `after_krate`, so they can be combined.
Diffstat (limited to 'src/librustdoc/html/render')
| -rw-r--r-- | src/librustdoc/html/render/mod.rs | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/src/librustdoc/html/render/mod.rs b/src/librustdoc/html/render/mod.rs index 03e091297e5..26afd705740 100644 --- a/src/librustdoc/html/render/mod.rs +++ b/src/librustdoc/html/render/mod.rs @@ -523,17 +523,12 @@ impl<'tcx> FormatRenderer<'tcx> for Context<'tcx> { Ok((cx, krate)) } - fn after_run(&mut self, diag: &rustc_errors::Handler) -> Result<(), Error> { - Arc::get_mut(&mut self.shared).unwrap().fs.close(); - let nb_errors = self.errors.iter().map(|err| diag.struct_err(&err).emit()).count(); - if nb_errors > 0 { - Err(Error::new(io::Error::new(io::ErrorKind::Other, "I/O error"), "")) - } else { - Ok(()) - } - } - - fn after_krate(&mut self, krate: &clean::Crate, cache: &Cache) -> Result<(), Error> { + fn after_krate( + &mut self, + krate: &clean::Crate, + cache: &Cache, + diag: &rustc_errors::Handler, + ) -> Result<(), Error> { let final_file = self.dst.join(&*krate.name.as_str()).join("all.html"); let settings_file = self.dst.join("settings.html"); let crate_name = krate.name; @@ -596,7 +591,15 @@ impl<'tcx> FormatRenderer<'tcx> for Context<'tcx> { &style_files, ); self.shared.fs.write(&settings_file, v.as_bytes())?; - Ok(()) + + // Flush pending errors. + Arc::get_mut(&mut self.shared).unwrap().fs.close(); + let nb_errors = self.errors.iter().map(|err| diag.struct_err(&err).emit()).count(); + if nb_errors > 0 { + Err(Error::new(io::Error::new(io::ErrorKind::Other, "I/O error"), "")) + } else { + Ok(()) + } } fn mod_item_in( |
