@@ -1414,12 +1414,14 @@ void CppCheck::executeAddons(const std::vector<std::string>& files, const std::s
14141414 if (mSettings .addons .empty () || files.empty ())
14151415 return ;
14161416
1417- FilesDeleter filesDeleter ;
1417+ const bool isCtuInfo = endsWith (files[ 0 ], " .ctu-info " ) ;
14181418
1419+ FilesDeleter filesDeleter;
14191420 std::string fileList;
14201421
1421- if (files.size () >= 2 || endsWith (files[0 ], " .ctu-info" )) {
1422- fileList = Path::getPathFromFilename (files[0 ]) + FILELIST;
1422+ if (files.size () >= 2 ) {
1423+ fileList = Path::getPathFromFilename (files[0 ]) + FILELIST + (" -" + std::to_string (mSettings .pid )) + " .txt" ;
1424+ filesDeleter.addFile (fileList);
14231425 std::ofstream fout (fileList);
14241426 for (const std::string& f: files)
14251427 fout << f << std::endl;
@@ -1431,7 +1433,7 @@ void CppCheck::executeAddons(const std::vector<std::string>& files, const std::s
14311433 std::string ctuInfo;
14321434
14331435 for (const AddonInfo &addonInfo : mSettings .addonInfos ) {
1434- if (addonInfo.name != " misra" && !addonInfo.ctu && endsWith (files. back (), " .ctu-info " ) )
1436+ if (isCtuInfo && addonInfo.name != " misra" && !addonInfo.ctu )
14351437 continue ;
14361438
14371439 const std::vector<picojson::value> results =
@@ -1497,7 +1499,7 @@ void CppCheck::executeAddons(const std::vector<std::string>& files, const std::s
14971499 }
14981500 }
14991501
1500- if (!mSettings .buildDir .empty () && fileList. empty () ) {
1502+ if (!mSettings .buildDir .empty () && !isCtuInfo ) {
15011503 const std::string& ctuInfoFile = getCtuInfoFileName (files[0 ]);
15021504 std::ofstream fout (ctuInfoFile);
15031505 fout << ctuInfo;
0 commit comments