diff --git a/src/CompileCommand.cc b/src/CompileCommand.cc index 659a5bc..b1fa4ca 100644 --- a/src/CompileCommand.cc +++ b/src/CompileCommand.cc @@ -3,10 +3,9 @@ #include "Utility.h" std::vector clangmm::CompileCommand::get_arguments() { - unsigned N = clang_CompileCommand_getNumArgs(cx_command); - std::vector res(N); - for (unsigned i = 0; i < N; i++) { - res[i] = to_string(clang_CompileCommand_getArg(cx_command, i)); - } - return res; + unsigned size = clang_CompileCommand_getNumArgs(cx_command); + std::vector arguments; + for (unsigned i = 0; i < size; i++) + arguments.emplace_back(to_string(clang_CompileCommand_getArg(cx_command, i))); + return arguments; } diff --git a/src/CompileCommands.cc b/src/CompileCommands.cc index 198b183..8403e18 100644 --- a/src/CompileCommands.cc +++ b/src/CompileCommands.cc @@ -1,9 +1,9 @@ #include "CompileCommands.h" clangmm::CompileCommands::CompileCommands(const std::string &filename, CompilationDatabase &db) { - cx_commands = - clang_CompilationDatabase_getCompileCommands(db.cx_db, filename.c_str()); - if(clang_CompileCommands_getSize(cx_commands)==0) + if(!filename.empty()) + cx_commands = clang_CompilationDatabase_getCompileCommands(db.cx_db, filename.c_str()); + if(filename.empty() || clang_CompileCommands_getSize(cx_commands)==0) cx_commands = clang_CompilationDatabase_getAllCompileCommands(db.cx_db); } @@ -12,10 +12,9 @@ clangmm::CompileCommands::~CompileCommands() { } std::vector clangmm::CompileCommands::get_commands() { - unsigned N = clang_CompileCommands_getSize(cx_commands); - std::vector res; - for (unsigned i = 0; i < N; i++) { - res.emplace_back(clang_CompileCommands_getCommand(cx_commands, i)); - } - return res; + unsigned size = clang_CompileCommands_getSize(cx_commands); + std::vector commands; + for (unsigned i = 0; i < size; i++) + commands.emplace_back(clang_CompileCommands_getCommand(cx_commands, i)); + return commands; }