diff --git a/tools/make_gtest_filter.py b/tools/make_gtest_filter.py
index d36f368783ba6..93a1e3c39e12b 100755
--- a/tools/make_gtest_filter.py
+++ b/tools/make_gtest_filter.py
@@ -171,7 +171,7 @@ def GetFiltersForTests(tests, class_only):
   if class_only:
     fixtures = set([t.split('.')[0] for t in tests])
     return [c + '.*' for c in fixtures] + \
-          ['*/' + c + '.*/*' for c in fixtures] + \
+          ['*/' + c + '/*.*' for c in fixtures] + \
           [c + '.*/*' for c in fixtures] + \
           [c + '/*.*' for c in fixtures]
   else:
diff --git a/tools/make_gtest_filter_test.py b/tools/make_gtest_filter_test.py
index 5cef94e99d9ba..fbd10a2211533 100755
--- a/tools/make_gtest_filter_test.py
+++ b/tools/make_gtest_filter_test.py
@@ -46,7 +46,7 @@ class Foo(unittest.TestCase):
     tests = ["TestSuite.TestName"]
     self.assertEqual(
         list(GetFiltersForTests(tests, class_only=True)),
-        ["TestSuite.*", "*/TestSuite.*/*", "TestSuite.*/*", "TestSuite/*.*"])
+        ["TestSuite.*", "*/TestSuite/*.*", "TestSuite.*/*", "TestSuite/*.*"])
     self.assertEqual(list(GetFiltersForTests(tests, class_only=False)), [
         "TestSuite.TestName", "*/TestSuite.TestName/*", "TestSuite.TestName/*",
         "TestSuite/*.TestName"