Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(348)

Unified Diff: third_party/WebKit/Source/core/frame/FrameSerializer.cpp

Issue 2469873002: [ImageResource 4] Split ImageResource into Resource and Image parts (Closed)
Patch Set: comments Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/frame/FrameSerializer.cpp
diff --git a/third_party/WebKit/Source/core/frame/FrameSerializer.cpp b/third_party/WebKit/Source/core/frame/FrameSerializer.cpp
index 19b8f1b621a0c5cd81b4ad4a5cd83ed4c9f3f80b..add724454d863971217a1bdf20ffc4a79dbb345a 100644
--- a/third_party/WebKit/Source/core/frame/FrameSerializer.cpp
+++ b/third_party/WebKit/Source/core/frame/FrameSerializer.cpp
@@ -48,7 +48,7 @@
#include "core/dom/Text.h"
#include "core/editing/serializers/MarkupAccumulator.h"
#include "core/fetch/FontResource.h"
-#include "core/fetch/ImageResource.h"
+#include "core/fetch/ImageResourceContent.h"
#include "core/frame/LocalFrame.h"
#include "core/html/HTMLFrameElementBase.h"
#include "core/html/HTMLImageElement.h"
@@ -305,14 +305,14 @@ void FrameSerializer::serializeFrame(const LocalFrame& frame) {
HTMLImageElement& imageElement = toHTMLImageElement(element);
KURL url =
document.completeURL(imageElement.getAttribute(HTMLNames::srcAttr));
- ImageResource* cachedImage = imageElement.cachedImage();
+ ImageResourceContent* cachedImage = imageElement.cachedImage();
addImageToResources(cachedImage, url);
} else if (isHTMLInputElement(element)) {
HTMLInputElement& inputElement = toHTMLInputElement(element);
if (inputElement.type() == InputTypeNames::image &&
inputElement.imageLoader()) {
KURL url = inputElement.src();
- ImageResource* cachedImage = inputElement.imageLoader()->image();
+ ImageResourceContent* cachedImage = inputElement.imageLoader()->image();
addImageToResources(cachedImage, url);
}
} else if (isHTMLLinkElement(element)) {
@@ -446,10 +446,11 @@ bool FrameSerializer::shouldAddURL(const KURL& url) {
!url.protocolIsData() && !m_delegate.shouldSkipResourceWithURL(url);
}
-void FrameSerializer::addToResources(const Resource& resource,
+void FrameSerializer::addToResources(const String& mimeType,
+ bool hasCacheControlNoStoreHeader,
PassRefPtr<const SharedBuffer> data,
const KURL& url) {
- if (m_delegate.shouldSkipResource(resource))
+ if (m_delegate.shouldSkipResource(hasCacheControlNoStoreHeader))
return;
if (!data) {
@@ -457,12 +458,11 @@ void FrameSerializer::addToResources(const Resource& resource,
return;
}
- String mimeType = resource.response().mimeType();
m_resources->append(SerializedResource(url, mimeType, std::move(data)));
m_resourceURLs.add(url);
}
-void FrameSerializer::addImageToResources(ImageResource* image,
+void FrameSerializer::addImageToResources(ImageResourceContent* image,
const KURL& url) {
if (!image || !image->hasImage() || image->errorOccurred() ||
!shouldAddURL(url))
@@ -473,7 +473,8 @@ void FrameSerializer::addImageToResources(ImageResource* image,
double imageStartTime = monotonicallyIncreasingTime();
RefPtr<const SharedBuffer> data = image->getImage()->data();
- addToResources(*image, data, url);
+ addToResources(image->response().mimeType(),
+ image->hasCacheControlNoStoreHeader(), data, url);
// If we're already reporting time for CSS serialization don't report it for
// this image to avoid reporting the same time twice.
@@ -494,7 +495,8 @@ void FrameSerializer::addFontToResources(FontResource* font) {
RefPtr<const SharedBuffer> data(font->resourceBuffer());
- addToResources(*font, data, font->url());
+ addToResources(font->response().mimeType(),
+ font->hasCacheControlNoStoreHeader(), data, font->url());
}
void FrameSerializer::retrieveResourcesForProperties(

Powered by Google App Engine
This is Rietveld 408576698