Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (187821 => 187822)
--- branches/safari-601.1-branch/Source/WebCore/ChangeLog 2015-08-04 07:01:42 UTC (rev 187821)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog 2015-08-04 07:01:45 UTC (rev 187822)
@@ -1,5 +1,21 @@
2015-08-03 Matthew Hanson <matthew_han...@apple.com>
+ Merge r187545. rdar://problem/21893047
+
+ 2015-07-29 Dean Jackson <d...@apple.com>
+
+ Remove dispatch_apply_f and instead use vImage more directly
+ https://bugs.webkit.org/show_bug.cgi?id=147391
+ <rdar://problem/21893047>
+
+ Fix the iOS builds.
+
+ * platform/graphics/cg/ImageBufferDataCG.cpp:
+ (WebCore::unpremultiplyBufferData):
+ (WebCore::premultiplyBufferData):
+
+2015-08-03 Matthew Hanson <matthew_han...@apple.com>
+
Merge r187536. rdar://problem/21893047
2015-07-28 Simon Fraser <simon.fra...@apple.com>
Modified: branches/safari-601.1-branch/Source/WebCore/platform/graphics/cg/ImageBufferDataCG.cpp (187821 => 187822)
--- branches/safari-601.1-branch/Source/WebCore/platform/graphics/cg/ImageBufferDataCG.cpp 2015-08-04 07:01:42 UTC (rev 187821)
+++ branches/safari-601.1-branch/Source/WebCore/platform/graphics/cg/ImageBufferDataCG.cpp 2015-08-04 07:01:45 UTC (rev 187822)
@@ -57,12 +57,12 @@
#if USE(ACCELERATE)
#if USE_ARGB32 || USE(IOSURFACE_CANVAS_BACKING_STORE)
-static void premultiplyBufferData(const vImage_Buffer& src, const vImage_Buffer& dest)
+static void unpremultiplyBufferData(const vImage_Buffer& src, const vImage_Buffer& dest)
{
ASSERT(src.data);
ASSERT(dest.data);
- if (kvImageNoError != vImagePremultiplyData_RGBA8888(&src, &dest, kvImageNoFlags))
+ if (kvImageNoError != vImageUnpremultiplyData_RGBA8888(&src, &dest, kvImageNoFlags))
return;
// Swap channels 1 and 3, to convert BGRA<->RGBA. IOSurfaces are BGRA, ImageData expects RGBA.
@@ -70,27 +70,30 @@
vImagePermuteChannels_ARGB8888(&dest, &dest, map, kvImageNoFlags);
}
-static void unpremultiplyBufferData(const vImage_Buffer& src, const vImage_Buffer& dest)
+#if !PLATFORM(IOS_SIMULATOR)
+static void premultiplyBufferData(const vImage_Buffer& src, const vImage_Buffer& dest)
{
ASSERT(src.data);
ASSERT(dest.data);
- if (kvImageNoError != vImageUnpremultiplyData_RGBA8888(&src, &dest, kvImageNoFlags))
+ if (kvImageNoError != vImagePremultiplyData_RGBA8888(&src, &dest, kvImageNoFlags))
return;
// Swap channels 1 and 3, to convert BGRA<->RGBA. IOSurfaces are BGRA, ImageData expects RGBA.
const uint8_t map[4] = { 2, 1, 0, 3 };
vImagePermuteChannels_ARGB8888(&dest, &dest, map, kvImageNoFlags);
}
+#endif // !PLATFORM(IOS_SIMULATOR)
#endif // USE_ARGB32 || USE(IOSURFACE_CANVAS_BACKING_STORE)
+#if !PLATFORM(IOS_SIMULATOR)
static void affineWarpBufferData(const vImage_Buffer& src, const vImage_Buffer& dest, float scale)
{
vImage_AffineTransform scaleTransform = { scale, 0, 0, scale, 0, 0 }; // FIXME: Add subpixel translation.
Pixel_8888 backgroundColor;
vImageAffineWarp_ARGB8888(&src, &dest, 0, &scaleTransform, backgroundColor, kvImageEdgeExtend);
}
-
+#endif // !PLATFORM(IOS_SIMULATOR)
#endif // USE(ACCELERATE)
RefPtr<Uint8ClampedArray> ImageBufferData::getData(const IntRect& rect, const IntSize& size, bool accelerateRendering, bool unmultiplied, float resolutionScale) const