Index: Source/core/fetch/ImageResource.cpp |
diff --git a/Source/core/fetch/ImageResource.cpp b/Source/core/fetch/ImageResource.cpp |
index feb42065501e3a975b38e8ec65b585ed5e2687e0..7b8f813e9e774183d06bec497516d2b4bd2ab9be 100644 |
--- a/Source/core/fetch/ImageResource.cpp |
+++ b/Source/core/fetch/ImageResource.cpp |
@@ -381,6 +381,27 @@ void ImageResource::updateImage(bool allDataReceived) |
} |
} |
+void ImageResource::updateBitmapImages(HashSet<ImageResource*>& images, bool redecodeImages) |
+{ |
+ if (redecodeImages) { |
+ for (HashSet<ImageResource*>::iterator it = images.begin(); it != images.end(); ++it) { |
+ ImageResource* imageResource = *it; |
+ imageResource->prune(); |
+ if (!imageResource->hasImage()) |
+ continue; |
+ BitmapImage* image = toBitmapImage(imageResource->image()); |
+ image->resetDecoder(); |
+ imageResource->updateImage(image->isAllDataReceived()); |
+ } |
+ } else { |
+ for (HashSet<ImageResource*>::iterator it = images.begin(); it != images.end(); ++it) { |
+ ImageResource* imageResource = *it; |
+ BitmapImage* image = toBitmapImage(imageResource->image()); |
+ imageResource->updateImage(image->isAllDataReceived()); |
+ } |
+ } |
+} |
+ |
void ImageResource::finishOnePart() |
{ |
if (m_loadingMultipartContent) |