Title: [227101] trunk/Source/WebCore
- Revision
- 227101
- Author
- jlew...@apple.com
- Date
- 2018-01-17 17:31:36 -0800 (Wed, 17 Jan 2018)
Log Message
Unreviewed, rolling out r227098.
This broke the build.
Reverted changeset:
"Remove linked-on test for Snow Leopard"
https://bugs.webkit.org/show_bug.cgi?id=181770
https://trac.webkit.org/changeset/227098
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (227100 => 227101)
--- trunk/Source/WebCore/ChangeLog 2018-01-18 00:59:26 UTC (rev 227100)
+++ trunk/Source/WebCore/ChangeLog 2018-01-18 01:31:36 UTC (rev 227101)
@@ -1,3 +1,15 @@
+2018-01-17 Matt Lewis <jlew...@apple.com>
+
+ Unreviewed, rolling out r227098.
+
+ This broke the build.
+
+ Reverted changeset:
+
+ "Remove linked-on test for Snow Leopard"
+ https://bugs.webkit.org/show_bug.cgi?id=181770
+ https://trac.webkit.org/changeset/227098
+
2018-01-17 Dean Jackson <d...@apple.com>
Remove linked-on test for Snow Leopard
Modified: trunk/Source/WebCore/PAL/ChangeLog (227100 => 227101)
--- trunk/Source/WebCore/PAL/ChangeLog 2018-01-18 00:59:26 UTC (rev 227100)
+++ trunk/Source/WebCore/PAL/ChangeLog 2018-01-18 01:31:36 UTC (rev 227101)
@@ -1,3 +1,15 @@
+2018-01-17 Matt Lewis <jlew...@apple.com>
+
+ Unreviewed, rolling out r227098.
+
+ This broke the build.
+
+ Reverted changeset:
+
+ "Remove linked-on test for Snow Leopard"
+ https://bugs.webkit.org/show_bug.cgi?id=181770
+ https://trac.webkit.org/changeset/227098
+
2018-01-17 Dean Jackson <d...@apple.com>
Remove linked-on test for Snow Leopard
Modified: trunk/Source/WebCore/PAL/pal/spi/cf/CFUtilitiesSPI.h (227100 => 227101)
--- trunk/Source/WebCore/PAL/pal/spi/cf/CFUtilitiesSPI.h 2018-01-18 00:59:26 UTC (rev 227100)
+++ trunk/Source/WebCore/PAL/pal/spi/cf/CFUtilitiesSPI.h 2018-01-18 01:31:36 UTC (rev 227101)
@@ -48,6 +48,7 @@
extern const CFStringRef _kCFSystemVersionProductVersionKey;
Boolean _CFAppVersionCheckLessThan(CFStringRef bundleID, int linkedOnAnOlderSystemThan, double versionNumberLessThan);
+Boolean _CFExecutableLinkedOnOrAfter(CFSystemVersion);
CFDictionaryRef _CFCopySystemVersionDictionary();
CFDictionaryRef _CFWebServicesCopyProviderInfo(CFStringRef serviceType, Boolean* outIsUserSelection);
Modified: trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp (227100 => 227101)
--- trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp 2018-01-18 00:59:26 UTC (rev 227100)
+++ trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp 2018-01-18 01:31:36 UTC (rev 227101)
@@ -3009,16 +3009,35 @@
bool isMatrixAnimation = listIndex < 0;
int numAnimations = isMatrixAnimation ? 1 : operations->size();
+#if PLATFORM(IOS)
+ bool reverseAnimationList = false;
+#else
+ bool reverseAnimationList = true;
#if !PLATFORM(WIN)
- for (int animationIndex = 0; animationIndex < numAnimations; ++animationIndex) {
-#else
- // QuartzCore on Windows expects animation lists to be applied in reverse order (<rdar://problem/9112233>).
- for (int animationIndex = numAnimations - 1; animationIndex >= 0; --animationIndex) {
+ // Old versions of Core Animation apply animations in reverse order (<rdar://problem/7095638>) so we need to flip the list.
+ // to be non-additive. For binary compatibility, the current version of Core Animation preserves this behavior for applications linked
+ // on or before Snow Leopard.
+ // FIXME: This fix has not been added to QuartzCore on Windows yet (<rdar://problem/9112233>) so we expect the
+ // reversed animation behavior
+ static bool executableWasLinkedOnOrBeforeSnowLeopard = !_CFExecutableLinkedOnOrAfter(CFSystemVersionLion);
+ if (!executableWasLinkedOnOrBeforeSnowLeopard)
+ reverseAnimationList = false;
#endif
- if (!appendToUncommittedAnimations(valueList, operations, animation, animationName, boxSize, animationIndex, timeOffset, isMatrixAnimation)) {
- validMatrices = false;
- break;
+#endif // PLATFORM(IOS)
+ if (reverseAnimationList) {
+ for (int animationIndex = numAnimations - 1; animationIndex >= 0; --animationIndex) {
+ if (!appendToUncommittedAnimations(valueList, operations, animation, animationName, boxSize, animationIndex, timeOffset, isMatrixAnimation)) {
+ validMatrices = false;
+ break;
+ }
}
+ } else {
+ for (int animationIndex = 0; animationIndex < numAnimations; ++animationIndex) {
+ if (!appendToUncommittedAnimations(valueList, operations, animation, animationName, boxSize, animationIndex, timeOffset, isMatrixAnimation)) {
+ validMatrices = false;
+ break;
+ }
+ }
}
return validMatrices;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes