Hello, FYI, i have found a double-delete bug, introduced in the very first changeset of that topic. Yet that should be it, damn. The patch below is against [master]
|I don't have time to review this. I suggest that you open an |bugtracker issue and post a cleaned-up mbox file for further |inspection. Oh yes, it is in sync, against all the odds. --steffen
commit 889d681 Author: Steffen Nurpmeso <sdao...@users.sf.net> Date: 2014-10-09 14:28:24 +0200 file_case: fix double delete.. Introduced in the very beginning (Encapsulate searchpath:: FILE*'s in new class file_case), this commit fixes a double delete (ownership of object overtaken by the also constructed iterator object, but nonetheless deleted by creator of both). --- src/roff/troff/input.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/roff/troff/input.cpp b/src/roff/troff/input.cpp index cae330c..5853157 100644 --- a/src/roff/troff/input.cpp +++ b/src/roff/troff/input.cpp @@ -803,10 +803,9 @@ void next_file() else { file_case *fcp = include_search_path.open_file_cautious(nm.contents(), fcp->fc_const_path); - if (fcp != NULL) { + if (fcp != NULL) input_stack::next_file(fcp, nm.contents()); - delete fcp; - } else + else error("can't open `%1': %2", nm.contents(), strerror(errno)); } tok.next();