diff --git a/third_party/WebKit/Source/platform/weborigin/SecurityPolicy.cpp b/third_party/WebKit/Source/platform/weborigin/SecurityPolicy.cpp
index e0fe4d0..72819a7 100644
--- a/third_party/WebKit/Source/platform/weborigin/SecurityPolicy.cpp
+++ b/third_party/WebKit/Source/platform/weborigin/SecurityPolicy.cpp
@@ -284,7 +284,8 @@
       (legacy_keywords_support == kSupportReferrerPolicyLegacyKeywords);
 
   if (EqualIgnoringASCIICase(policy, "no-referrer") ||
-      (support_legacy_keywords && EqualIgnoringASCIICase(policy, "never"))) {
+      (support_legacy_keywords && (EqualIgnoringASCIICase(policy, "never") ||
+                                   EqualIgnoringASCIICase(policy, "none")))) {
     *result = kReferrerPolicyNever;
     return true;
   }
diff --git a/third_party/WebKit/Source/platform/weborigin/SecurityPolicyTest.cpp b/third_party/WebKit/Source/platform/weborigin/SecurityPolicyTest.cpp
index 6f7094c..32dfcd6 100644
--- a/third_party/WebKit/Source/platform/weborigin/SecurityPolicyTest.cpp
+++ b/third_party/WebKit/Source/platform/weborigin/SecurityPolicyTest.cpp
@@ -213,23 +213,31 @@
   struct TestCase {
     const char* header;
     bool is_valid;
+    ReferrerPolicyLegacyKeywordsSupport keywords;
     ReferrerPolicy expected_policy;
   };
 
   TestCase inputs[] = {
-      {"origin", true, kReferrerPolicyOrigin},
-      {"foo", false, kReferrerPolicyDefault},
-      {"origin, foo", true, kReferrerPolicyOrigin},
-      {"origin, foo-bar", true, kReferrerPolicyOrigin},
-      {"origin, foo bar", false, kReferrerPolicyDefault},
+      {"origin", true, kDoNotSupportReferrerPolicyLegacyKeywords,
+       kReferrerPolicyOrigin},
+      {"none", true, kSupportReferrerPolicyLegacyKeywords,
+       kReferrerPolicyNever},
+      {"none", false, kDoNotSupportReferrerPolicyLegacyKeywords,
+       kReferrerPolicyDefault},
+      {"foo", false, kDoNotSupportReferrerPolicyLegacyKeywords,
+       kReferrerPolicyDefault},
+      {"origin, foo", true, kDoNotSupportReferrerPolicyLegacyKeywords,
+       kReferrerPolicyOrigin},
+      {"origin, foo-bar", true, kDoNotSupportReferrerPolicyLegacyKeywords,
+       kReferrerPolicyOrigin},
+      {"origin, foo bar", false, kDoNotSupportReferrerPolicyLegacyKeywords,
+       kReferrerPolicyDefault},
   };
 
   for (TestCase test : inputs) {
     ReferrerPolicy actual_policy = kReferrerPolicyDefault;
-    EXPECT_EQ(test.is_valid,
-              SecurityPolicy::ReferrerPolicyFromHeaderValue(
-                  test.header, kDoNotSupportReferrerPolicyLegacyKeywords,
-                  &actual_policy));
+    EXPECT_EQ(test.is_valid, SecurityPolicy::ReferrerPolicyFromHeaderValue(
+                                 test.header, test.keywords, &actual_policy));
     if (test.is_valid)
       EXPECT_EQ(test.expected_policy, actual_policy);
   }
