From dbde98953a796e16fee3fa9afe8c3af444d9e242 Mon Sep 17 00:00:00 2001 From: Jeff Kaufman Date: Mon, 27 Jun 2016 14:20:31 -0400 Subject: [PATCH] preload: strip existing rel=preload hints Fixes https://github.com/pagespeed/mod_pagespeed/issues/1327 --- .../rewriter/strip_subresource_hints_filter.cc | 4 +++- .../rewriter/strip_subresource_hints_filter_test.cc | 10 ++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/net/instaweb/rewriter/strip_subresource_hints_filter.cc b/net/instaweb/rewriter/strip_subresource_hints_filter.cc index 7e874d6f14..1482fb8792 100644 --- a/net/instaweb/rewriter/strip_subresource_hints_filter.cc +++ b/net/instaweb/rewriter/strip_subresource_hints_filter.cc @@ -51,7 +51,9 @@ void StripSubresourceHintsFilter::StartElement(HtmlElement* element) { if (element->keyword() == HtmlName::kLink) { const char *value = element->AttributeValue(HtmlName::kRel); - if (value && StringCaseEqual(value, "subresource")) { + if (value && ( + StringCaseEqual(value, "subresource") || + StringCaseEqual(value, "preload"))) { const RewriteOptions *options = driver_->options(); const char *resource_url = element->AttributeValue(HtmlName::kSrc); if (!resource_url) { diff --git a/net/instaweb/rewriter/strip_subresource_hints_filter_test.cc b/net/instaweb/rewriter/strip_subresource_hints_filter_test.cc index c8a305412b..55260c792f 100644 --- a/net/instaweb/rewriter/strip_subresource_hints_filter_test.cc +++ b/net/instaweb/rewriter/strip_subresource_hints_filter_test.cc @@ -156,6 +156,16 @@ TEST_F(StripSubresourceHintsFilterTest, SingleResourceValidLink) { ValidateStripSubresourceHint(source, rewritten); } +TEST_F(StripSubresourceHintsFilterTest, SingleResourceValidPreloadLink) { + const char *source = + "" + ""; + const char *rewritten = + "" + ""; + ValidateStripSubresourceHint(source, rewritten); +} + TEST_F(StripSubresourceHintsFilterTest, SingleResourceExternalLink) { const char *source = ""