aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/cpp/blaze_util.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/cpp/blaze_util.cc')
-rw-r--r--src/main/cpp/blaze_util.cc18
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