diff options
Diffstat (limited to 'src/main/cpp/blaze_util.cc')
-rw-r--r-- | src/main/cpp/blaze_util.cc | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/main/cpp/blaze_util.cc b/src/main/cpp/blaze_util.cc index a5268e646b..0fb78986af 100644 --- a/src/main/cpp/blaze_util.cc +++ b/src/main/cpp/blaze_util.cc @@ -103,10 +103,15 @@ const char* SearchUnaryOption(const vector<string>& args, return GetUnaryOption(args[i].c_str(), NULL, key); } -bool SearchNullaryOption(const vector<string>& args, const char *key) { +static bool SearchNullaryOption(const vector<string>& args, + const char *key, + const bool include_positional_params) { for (vector<string>::size_type i = 0; i < args.size(); i++) { if (args[i] == "--") { - return false; + if (!include_positional_params) { + return false; + } + continue; } if (GetNullaryOption(args[i].c_str(), key)) { return true; @@ -115,6 +120,15 @@ bool SearchNullaryOption(const vector<string>& args, const char *key) { return false; } +bool SearchNullaryOption(const vector<string>& args, const char *key) { + return SearchNullaryOption(args, key, false); +} + +bool SearchNullaryOptionEverywhere(const vector<string>& args, + const char *key) { + return SearchNullaryOption(args, key, true); +} + bool VerboseLogging() { return !GetEnv("VERBOSE_BLAZE_CLIENT").empty(); } // Read the Jvm version from a file descriptor. The read fd |