1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
From fbb145cd079497b8c88197276f92cb89685b4d54 Mon Sep 17 00:00:00 2001
From: Rune Tynan <runetynan@gmail.com>
Date: Tue, 20 Feb 2024 16:43:04 -0800
Subject: [PATCH] Fix not closing files when spotless history is returned
---
crates/engine_bibtex/src/lib.rs | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/crates/engine_bibtex/src/lib.rs b/crates/engine_bibtex/src/lib.rs
index fd97b461d..61efc469c 100644
--- a/crates/engine_bibtex/src/lib.rs
+++ b/crates/engine_bibtex/src/lib.rs
@@ -333,9 +333,7 @@ pub(crate) fn bibtex_main(ctx: &mut Bibtex<'_, '_>, aux_file_name: &CStr) -> His
let res = inner_bibtex_main(ctx, &mut globals, aux_file_name);
match res {
- Ok(History::Spotless) => (),
- Ok(hist) => return hist,
- Err(BibtexError::Recover) => {
+ Err(BibtexError::Recover) | Ok(History::Spotless) => {
// SAFETY: bst_file guaranteed valid at this point
unsafe { peekable_close(ctx, ctx.bst_file) };
ctx.bst_file = None;
@@ -345,6 +343,7 @@ pub(crate) fn bibtex_main(ctx: &mut Bibtex<'_, '_>, aux_file_name: &CStr) -> His
ttbc_output_close(ctx.engine, ctx.bbl_file);
}
Err(BibtexError::Fatal) => (),
+ Ok(hist) => return hist,
}
match get_history() {
|