From 7e089ab8b5b923a9fd2bb81a8fcd08c58c13426c Mon Sep 17 00:00:00 2001 From: Thomas Krijnen Date: Tue, 4 Jun 2019 17:06:13 +0200 Subject: [PATCH] Fix cleanup of temp files in case of failed initialization --- src/ifcconvert/IfcConvert.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/ifcconvert/IfcConvert.cpp b/src/ifcconvert/IfcConvert.cpp index 144a8826f6..c9ea8bdddc 100644 --- a/src/ifcconvert/IfcConvert.cpp +++ b/src/ifcconvert/IfcConvert.cpp @@ -688,6 +688,7 @@ int main(int argc, char** argv) { if (!init_input_file(IfcUtil::path::to_utf8(input_filename), ifc_file, no_progress || quiet, mmap)) { write_log(!quiet); + serializer.reset(); IfcUtil::path::delete_file(IfcUtil::path::to_utf8(output_temp_filename)); /**< @todo Windows Unicode support */ return EXIT_FAILURE; } @@ -697,6 +698,7 @@ int main(int argc, char** argv) { /// @todo It would be nice to know and print separate error prints for a case where we found no entities /// and for a case we found no entities that satisfy our filtering criteria. Logger::Error("No geometrical entities found"); + serializer.reset(); IfcUtil::path::delete_file(IfcUtil::path::to_utf8(output_temp_filename)); write_log(!quiet); return EXIT_FAILURE;