Cleanup csl file on program close
This commit is contained in:
parent
0e03bc0740
commit
c3e13888d0
2 changed files with 10 additions and 1 deletions
|
@ -3,6 +3,7 @@ use serde_yaml::Value;
|
|||
use std::path::PathBuf;
|
||||
use std::collections::HashMap;
|
||||
use utils::result_prefix;
|
||||
use std::fs::remove_file;
|
||||
|
||||
pub mod read;
|
||||
pub mod validate;
|
||||
|
@ -45,3 +46,10 @@ pub fn get_config() -> Result<Config, String> {
|
|||
try!(result_prefix(validate::validate(config.clone()), "Config Validation Error".into()));
|
||||
return Ok(Config::new(config));
|
||||
}
|
||||
|
||||
|
||||
pub fn cleanup_config(config: Config) {
|
||||
if config.references.is_some() {
|
||||
remove_file(config.references.unwrap().csl).expect("Failed to remove file");
|
||||
}
|
||||
}
|
||||
|
|
|
@ -56,7 +56,8 @@ fn main() {
|
|||
match subcommand {
|
||||
"build" => {
|
||||
let config = get_config(args.clone());
|
||||
utils::ok_or_exit(build(config));
|
||||
utils::ok_or_exit(build(config.clone()));
|
||||
config::cleanup_config(config);
|
||||
}
|
||||
cmd => {
|
||||
writeln!(io::stderr(), "Unknown command {}.", cmd).unwrap();
|
||||
|
|
Reference in a new issue