Update the dependency manager file stack when rendering blog post pages.
This commit is contained in:
parent
3867f965d2
commit
4e0f66401d
@ -49,6 +49,12 @@ render!(
|
|||||||
original,
|
original,
|
||||||
render_context,
|
render_context,
|
||||||
{
|
{
|
||||||
|
render_context
|
||||||
|
.dependency_manager
|
||||||
|
.lock()
|
||||||
|
.unwrap()
|
||||||
|
.push_file(&original.page.src)?;
|
||||||
|
let ret = (|| {
|
||||||
let css_files = vec![
|
let css_files = vec![
|
||||||
get_web_path(
|
get_web_path(
|
||||||
render_context.config,
|
render_context.config,
|
||||||
@ -69,7 +75,8 @@ render!(
|
|||||||
render_context.output_file,
|
render_context.output_file,
|
||||||
"blog_post.js",
|
"blog_post.js",
|
||||||
)?];
|
)?];
|
||||||
let global_settings = GlobalSettings::new(original.page.title.clone(), css_files, js_files);
|
let global_settings =
|
||||||
|
GlobalSettings::new(original.page.title.clone(), css_files, js_files);
|
||||||
let page_header = PageHeader::new(
|
let page_header = PageHeader::new(
|
||||||
render_context.config.get_site_title().map(str::to_string),
|
render_context.config.get_site_title().map(str::to_string),
|
||||||
Some(get_web_path(
|
Some(get_web_path(
|
||||||
@ -120,5 +127,12 @@ render!(
|
|||||||
footnotes,
|
footnotes,
|
||||||
};
|
};
|
||||||
Ok(ret)
|
Ok(ret)
|
||||||
|
})();
|
||||||
|
render_context
|
||||||
|
.dependency_manager
|
||||||
|
.lock()
|
||||||
|
.unwrap()
|
||||||
|
.pop_file()?;
|
||||||
|
ret
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
use std::path::PathBuf;
|
use std::path::PathBuf;
|
||||||
|
|
||||||
|
use crate::error::CustomError;
|
||||||
|
|
||||||
pub(crate) type RefDependencyManager = std::sync::Arc<std::sync::Mutex<DependencyManager>>;
|
pub(crate) type RefDependencyManager = std::sync::Arc<std::sync::Mutex<DependencyManager>>;
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
@ -16,4 +18,19 @@ impl DependencyManager {
|
|||||||
file_stack: Vec::new(),
|
file_stack: Vec::new(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub(crate) fn push_file<P>(&mut self, path: P) -> Result<(), CustomError>
|
||||||
|
where
|
||||||
|
P: Into<PathBuf>,
|
||||||
|
{
|
||||||
|
self.file_stack.push(path.into());
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
|
|
||||||
|
pub(crate) fn pop_file(&mut self) -> Result<(), CustomError> {
|
||||||
|
self.file_stack
|
||||||
|
.pop()
|
||||||
|
.expect("Popped more files off the dependency manager file stack than exist.");
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user