diff --git a/tools_webrtc/gtest-parallel-wrapper.py b/tools_webrtc/gtest-parallel-wrapper.py
index e7a659f..de845b0 100755
--- a/tools_webrtc/gtest-parallel-wrapper.py
+++ b/tools_webrtc/gtest-parallel-wrapper.py
@@ -81,6 +81,10 @@
   parser.add_argument('--isolated-script-test-chartjson-output', type=str,
                       default=None)
 
+  # No-sandbox is a Chromium-specific flag, ignore it.
+  # TODO(oprypin): Remove (bugs.webrtc.org/8115)
+  parser.add_argument('--no-sandbox', action='store_true', default=False)
+
   # We have to do this, since --isolated-script-test-output is passed as an
   # argument to the executable by the swarming scripts, and we want to pass it
   # to gtest-parallel instead.
diff --git a/tools_webrtc/valgrind/webrtc_tests.py b/tools_webrtc/valgrind/webrtc_tests.py
index 627025c..dcd88e8 100755
--- a/tools_webrtc/valgrind/webrtc_tests.py
+++ b/tools_webrtc/valgrind/webrtc_tests.py
@@ -24,6 +24,7 @@
 specific suppressions in our own files.
 """
 
+import argparse
 import logging
 import optparse
 import os
@@ -124,6 +125,15 @@
                     help="run the tests with --test-launcher-shard-index")
   options, args = parser.parse_args()
 
+  ignore_parser = argparse.ArgumentParser()
+  # Ignore Chromium-specific flags
+  # TODO(oprypin): Remove (bugs.webrtc.org/8115)
+  ignore_parser.add_argument('--isolated-script-test-output',
+                             type=str, default=None)
+  ignore_parser.add_argument('--isolated-script-test-chartjson-output',
+                             type=str, default=None)
+  _, args = ignore_parser.parse_known_args(args)
+
   if options.verbose:
     logging_utils.config_root(logging.DEBUG)
   else:
diff --git a/webrtc/modules/audio_coding/codecs/isac/fix/test/kenny.cc b/webrtc/modules/audio_coding/codecs/isac/fix/test/kenny.cc
index e39f1ef..79a525b 100644
--- a/webrtc/modules/audio_coding/codecs/isac/fix/test/kenny.cc
+++ b/webrtc/modules/audio_coding/codecs/isac/fix/test/kenny.cc
@@ -384,10 +384,8 @@
     sscanf(argv[CodingMode+1], "%s", bottleneck_file);
     f_bn = fopen(bottleneck_file, "rb");
     if (f_bn  == NULL) {
-      printf("No value provided for BottleNeck and cannot read file %s\n",
-             bottleneck_file);
-      exit(0);  // TODO(oprypin): don't silence this error
-      // FAIL() << "Cannot read file " << bottleneck_file;
+      printf("No value provided for BottleNeck\n");
+      FAIL() << "Cannot read file " << bottleneck_file;
     } else {
       int aux_var;
       printf("reading bottleneck rates from file %s\n\n",bottleneck_file);
diff --git a/webrtc/test/test_main.cc b/webrtc/test/test_main.cc
index 2d7dbe2..3f6d4f1 100644
--- a/webrtc/test/test_main.cc
+++ b/webrtc/test/test_main.cc
@@ -19,6 +19,11 @@
 
 #if defined(WEBRTC_IOS)
 #include "webrtc/test/ios/test_support.h"
+
+DEFINE_string(NSTreatUnknownArgumentsAsOpen, "",
+    "Intentionally ignored flag intended for iOS simulator.");
+DEFINE_string(ApplePersistenceIgnoreState, "",
+    "Intentionally ignored flag intended for iOS simulator.");
 #endif
 
 DEFINE_bool(logs, false, "print logs to stderr");
@@ -36,9 +41,6 @@
   if (rtc::LogMessage::GetLogToDebug() > rtc::LS_INFO)
     rtc::LogMessage::LogToDebug(rtc::LS_INFO);
 
-  // AllowCommandLineParsing allows us to ignore flags passed on to us by
-  // Chromium build bots without having to explicitly disable them.
-  google::AllowCommandLineReparsing();
   google::ParseCommandLineFlags(&argc, &argv, false);
 
   webrtc::test::SetExecutablePath(argv[0]);
diff --git a/webrtc/voice_engine/test/auto_test/voe_standard_test.cc b/webrtc/voice_engine/test/auto_test/voe_standard_test.cc
index 4cb6d52..5449a2f 100644
--- a/webrtc/voice_engine/test/auto_test/voe_standard_test.cc
+++ b/webrtc/voice_engine/test/auto_test/voe_standard_test.cc
@@ -101,9 +101,6 @@
   // This function and RunInAutomatedMode is defined in automated_mode.cc
   // to avoid macro clashes with googletest (for instance ASSERT_TRUE).
   webrtc::voetest::InitializeGoogleTest(&argc, argv);
-  // AllowCommandLineParsing allows us to ignore flags passed on to us by
-  // Chromium build bots without having to explicitly disable them.
-  google::AllowCommandLineReparsing();
   google::ParseCommandLineFlags(&argc, &argv, true);
 
   if (FLAGS_automated) {
