Changeset 150340 in webkit
- Timestamp:
- May 18, 2013, 12:09:07 PM (12 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified trunk/Source/WebCore/ChangeLog ¶
r150339 r150340 1 2013-05-17 Simon Fraser <simon.fraser@apple.com> 2 3 Garbage on page background while http://canberraballoons.com.au is loading 4 https://bugs.webkit.org/show_bug.cgi?id=116384 5 <rdar://problem/13930328> 6 7 Reviewed by Dan Bernstein. 8 9 This page loads a large JPEG image as the body background. 10 ImageSource::frameHasAlphaAtIndex() always claims that JPEG images 11 are opaque, but this isn't true if the frame is only partially loaded. 12 However, this would cause FillLayer::hasOpaqueImage() to report that the 13 background image is opaque, so we'd skip painting the background color. 14 Unpainted content in an opaque layer results in garbage. 15 16 Fix by having ImageSource::frameHasAlphaAtIndex() always return true 17 for frames that are not complete. When the image load completes, we 18 recompute metadata and correctly determine that the frame is opaque. 19 20 * platform/graphics/cg/ImageSourceCG.cpp: 21 (WebCore::ImageSource::frameHasAlphaAtIndex): 22 1 23 2013-05-18 Timothy Hatcher <timothy@apple.com> 2 24 -
TabularUnified trunk/Source/WebCore/platform/graphics/cg/ImageSourceCG.cpp ¶
r149980 r150340 362 362 } 363 363 364 bool ImageSource::frameHasAlphaAtIndex(size_t )364 bool ImageSource::frameHasAlphaAtIndex(size_t index) 365 365 { 366 366 if (!m_decoder) 367 return false; 367 return false; // FIXME: why doesn't this return true? 368 369 if (!frameIsCompleteAtIndex(index)) 370 return true; 368 371 369 372 CFStringRef imageType = CGImageSourceGetType(m_decoder);
Note:
See TracChangeset
for help on using the changeset viewer.