[lib/Fuzzer] ignore flags that start with --; use git pull --rebase instead of just...
authorKostya Serebryany <kcc@google.com>
Thu, 21 May 2015 20:39:13 +0000 (20:39 +0000)
committerKostya Serebryany <kcc@google.com>
Thu, 21 May 2015 20:39:13 +0000 (20:39 +0000)
llvm-svn: 237950

llvm/lib/Fuzzer/FuzzerDriver.cpp
llvm/lib/Fuzzer/pull_and_push_fuzz_corpus.sh

index dd0db86..edfe09e 100644 (file)
@@ -75,6 +75,8 @@ static void PrintHelp() {
     std::cerr << "\t";
     std::cerr << D.Default << "\t" << D.Description << "\n";
   }
+  std::cerr << "\nFlags starting with '--' will be ignored and "
+            "will be passed verbatim to subprocesses.\n";
 }
 
 static const char *FlagValue(const char *Param, const char *Name) {
@@ -87,6 +89,14 @@ static const char *FlagValue(const char *Param, const char *Name) {
 
 static bool ParseOneFlag(const char *Param) {
   if (Param[0] != '-') return false;
+  if (Param[1] == '-') {
+    static bool PrintedWarning = false;
+    if (!PrintedWarning) {
+      PrintedWarning = true;
+      std::cerr << "WARNING: libFuzzer ignores flags that start with '--'\n";
+    }
+    return true;
+  }
   for (size_t F = 0; F < kNumFlags; F++) {
     const char *Name = FlagDescriptions[F].Name;
     const char *Str = FlagValue(Param, Name);
index bd564e3..05c322c 100755 (executable)
@@ -8,10 +8,10 @@
 cd $1
 git add *
 git commit -m "fuzz test corpus"
-git pull --no-edit
+git pull --rebase --no-edit
 for((attempt=0; attempt<5; attempt++)); do
   echo GIT PUSH $1 ATTEMPT $attempt
   if $(git push); then break; fi
-  git pull --no-edit
+  git pull --rebase --no-edit
 done