diff --git a/CPPCheckPlugin/AnalyzerCppcheck.cs b/CPPCheckPlugin/AnalyzerCppcheck.cs index ce6110a..f0fa6e6 100644 --- a/CPPCheckPlugin/AnalyzerCppcheck.cs +++ b/CPPCheckPlugin/AnalyzerCppcheck.cs @@ -12,6 +12,9 @@ class AnalyzerCppcheck : ICodeAnalyzer public override void analyze(List filesToAnalyze, OutputWindowPane outputWindow, bool is64bitConfiguration, bool isDebugConfiguration, bool bringOutputToFrontAfterAnalysis) { + if (filesToAnalyze.Count == 0) + return; + Debug.Assert(_numCores > 0); String cppheckargs = CppcheckSettings.DefaultArguments; diff --git a/CPPCheckPlugin/CPPCheckPluginPackage.cs b/CPPCheckPlugin/CPPCheckPluginPackage.cs index d9cf4ce..f572595 100644 --- a/CPPCheckPlugin/CPPCheckPluginPackage.cs +++ b/CPPCheckPlugin/CPPCheckPluginPackage.cs @@ -124,10 +124,8 @@ private void checkCurrentProject() foreach (dynamic file in project.Files) { // Only checking cpp files (performance) - dynamic fileType = file.FileType; - Type fileTypeEnumType = fileType.GetType(); - var fileTypeEnumConstant = Enum.GetName(fileTypeEnumType, fileType); - if (fileTypeEnumConstant == "eFileTypeCppCode") + String fileExtension = (file.Extension as String).ToLower(); + if (fileExtension == ".cpp" || fileExtension == ".cxx" || fileExtension == ".c" || fileExtension == ".c++" || fileExtension == ".cc" || fileExtension == ".cp") { if (!(file.Name.StartsWith("moc_") && file.Name.EndsWith(".cpp")) && !(file.Name.StartsWith("ui_") && file.Name.EndsWith(".h")) && !(file.Name.StartsWith("qrc_") && file.Name.EndsWith(".cpp"))) // Ignoring Qt MOC and UI files { @@ -136,6 +134,7 @@ private void checkCurrentProject() files.Add(f); } } + } break; // Only checking one project at a time for now }