Title: [146622] trunk/Source/WebCore
- Revision
- 146622
- Author
- [email protected]
- Date
- 2013-03-22 09:24:48 -0700 (Fri, 22 Mar 2013)
Log Message
REGRESSION: -webkit-box-reflect does not show on video elements
https://bugs.webkit.org/show_bug.cgi?id=112397
Reviewed by Eric Carlson.
Work around the ASSERTs generated when setting an AVPlayerLayer's player property
during a CA flush by setting the player property during the next runloop, outside
of a CA flush.
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
(PlatformCALayer::clone):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (146621 => 146622)
--- trunk/Source/WebCore/ChangeLog 2013-03-22 16:22:26 UTC (rev 146621)
+++ trunk/Source/WebCore/ChangeLog 2013-03-22 16:24:48 UTC (rev 146622)
@@ -1,3 +1,17 @@
+2013-03-22 Jer Noble <[email protected]>
+
+ REGRESSION: -webkit-box-reflect does not show on video elements
+ https://bugs.webkit.org/show_bug.cgi?id=112397
+
+ Reviewed by Eric Carlson.
+
+ Work around the ASSERTs generated when setting an AVPlayerLayer's player property
+ during a CA flush by setting the player property during the next runloop, outside
+ of a CA flush.
+
+ * platform/graphics/ca/mac/PlatformCALayerMac.mm:
+ (PlatformCALayer::clone):
+
2013-03-22 [email protected] <[email protected]>
[Curl] Performance fix, avoid loading cookie file on every request.
Modified: trunk/Source/WebCore/platform/graphics/ca/mac/PlatformCALayerMac.mm (146621 => 146622)
--- trunk/Source/WebCore/platform/graphics/ca/mac/PlatformCALayerMac.mm 2013-03-22 16:22:26 UTC (rev 146621)
+++ trunk/Source/WebCore/platform/graphics/ca/mac/PlatformCALayerMac.mm 2013-03-22 16:24:48 UTC (rev 146622)
@@ -249,10 +249,8 @@
type = LayerTypeTransformLayer;
break;
case LayerTypeAVPlayerLayer:
-// FIXME: This is causing assertions, so disable for now
-// https://bugs.webkit.org/show_bug.cgi?id=112490
-// type = LayerTypeAVPlayerLayer;
-// break;
+ type = LayerTypeAVPlayerLayer;
+ break;
case LayerTypeLayer:
default:
type = LayerTypeLayer;
@@ -275,8 +273,13 @@
newLayer->copyFiltersFrom(this);
#endif
- if (type == LayerTypeAVPlayerLayer)
- [newLayer->playerLayer() setPlayer:[playerLayer() player]];
+ if (type == LayerTypeAVPlayerLayer) {
+ AVPlayerLayer* destinationPlayerLayer = newLayer->playerLayer();
+ AVPlayerLayer* sourcePlayerLayer = playerLayer();
+ dispatch_async(dispatch_get_main_queue(), ^{
+ [destinationPlayerLayer setPlayer:[sourcePlayerLayer player]];
+ });
+ }
return newLayer;
}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes