@@ -1011,18 +1011,6 @@ unsigned int CppCheck::checkFile(const FileWithDetails& file, const std::string
10111011 }
10121012 }
10131013
1014- FilesDeleter filesDeleter;
1015-
1016- // write dump file xml prolog
1017- std::ofstream fdump;
1018- std::string dumpFile;
1019- createDumpFile (mSettings , file, fdump, dumpFile);
1020- if (fdump.is_open ()) {
1021- fdump << dumpProlog;
1022- if (!mSettings .dump )
1023- filesDeleter.addFile (dumpFile);
1024- }
1025-
10261014 // Get directives
10271015 std::list<Directive> directives = preprocessor.createDirectives (tokens1);
10281016 preprocessor.simplifyPragmaAsm (tokens1);
@@ -1072,6 +1060,18 @@ unsigned int CppCheck::checkFile(const FileWithDetails& file, const std::string
10721060 }
10731061 }
10741062
1063+ FilesDeleter filesDeleter;
1064+
1065+ // write dump file xml prolog
1066+ std::ofstream fdump;
1067+ std::string dumpFile;
1068+ createDumpFile (mSettings , file, fdump, dumpFile);
1069+ if (fdump.is_open ()) {
1070+ fdump << dumpProlog;
1071+ if (!mSettings .dump )
1072+ filesDeleter.addFile (dumpFile);
1073+ }
1074+
10751075 std::set<unsigned long long > hashes;
10761076 int checkCount = 0 ;
10771077 bool hasValidConfig = false ;
@@ -1238,6 +1238,7 @@ unsigned int CppCheck::checkFile(const FileWithDetails& file, const std::string
12381238 mErrorLogger .reportErr (errmsg);
12391239 }
12401240
1241+ // TODO: will not be closed if we encountered an exception
12411242 // dumped all configs, close root </dumps> element now
12421243 if (fdump.is_open ()) {
12431244 fdump << " </dumps>" << std::endl;
0 commit comments