Fix parse of gtest_filter in bionic gtest main.

Bug: 19130330
Change-Id: Id6a60570a8aab6ae7259ff228b3801285b378f77
diff --git a/tests/gtest_main.cpp b/tests/gtest_main.cpp
index 11828ee..b0740b0 100644
--- a/tests/gtest_main.cpp
+++ b/tests/gtest_main.cpp
@@ -771,7 +771,12 @@
     if (gtest_filter_str == "") {
       gtest_filter_str = "--gtest_filter=-bionic_selftest*";
     } else {
-      gtest_filter_str += ":-bionic_selftest*";
+      // Find if '-' for NEGATIVE_PATTERNS exists.
+      if (gtest_filter_str.find(":-") != std::string::npos) {
+        gtest_filter_str += ":bionic_selftest*";
+      } else {
+        gtest_filter_str += ":-bionic_selftest*";
+      }
     }
     args.push_back(strdup(gtest_filter_str.c_str()));
   }