diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog index 49998c370c6b06e8d493274c8eb4f0d798e59904..c9262a70ed5270ba453d1cd535ebef83092d0b83 100644 --- a/LayoutTests/ChangeLog +++ b/LayoutTests/ChangeLog @@ -1,3 +1,13 @@ +2012-02-03 Alexis Menard + + REGRESSION (r105401-105403): Blue flash on css border transition + https://bugs.webkit.org/show_bug.cgi?id=77491 + + Reviewed by Simon Fraser. + + * animations/animation-border-overflow-expected.txt: Added. + * animations/animation-border-overflow.html: Added. + 2012-02-03 Jesus Sanchez-Palencia [Qt][WK2] Incorrect line number dumping diff --git a/LayoutTests/animations/animation-border-overflow-expected.txt b/LayoutTests/animations/animation-border-overflow-expected.txt new file mode 100644 index 0000000000000000000000000000000000000000..73d93044718b0eb2be261eb64ed3f87575476ee6 --- /dev/null +++ b/LayoutTests/animations/animation-border-overflow-expected.txt @@ -0,0 +1,3 @@ +This test performs an animation of the border-top-width property from a given value to 0. It tests if an intermediate value is correct. +PASS - "border-top-width" property for "box" element at 0.1s saw something close to: 200 + diff --git a/LayoutTests/animations/animation-border-overflow.html b/LayoutTests/animations/animation-border-overflow.html new file mode 100644 index 0000000000000000000000000000000000000000..d8cd3ed8e9c4dbfd6f1fdad4cce2043a7fa88039 --- /dev/null +++ b/LayoutTests/animations/animation-border-overflow.html @@ -0,0 +1,40 @@ + + +Unfilled Animation Test + + + + + +This test performs an animation of the border-top-width property from a given value to 0. It tests if an intermediate value is correct. +
+
+
+
+ + diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog index 6be9b202fa8a57b0424ae34b51d4fb141182e223..ff074924cef98ec7652f20f1409729671cd8ee7d 100644 --- a/Source/WebCore/ChangeLog +++ b/Source/WebCore/ChangeLog @@ -1,3 +1,19 @@ +2012-02-03 Alexis Menard + + REGRESSION (r105401-105403): Blue flash on css border transition + https://bugs.webkit.org/show_bug.cgi?id=77491 + + Reviewed by Simon Fraser. + + The new blend function added with r105403 takes unsigned as parameters therefore + we have to be careful to not overflow in case the to is less than from (animating + from 400 to 0 for example). + + Test: animations/animation-border-overflow.html + + * platform/animation/AnimationUtilities.h: + (WebCore::blend): + 2012-02-03 Justin Novosad [Chromium] ImageBufferSkia: remove unnecessary overload of flush in diff --git a/Source/WebCore/platform/animation/AnimationUtilities.h b/Source/WebCore/platform/animation/AnimationUtilities.h index aebca46bbafc5e070dd954d281e78d564f087fa2..87dabe6a6a8a679547c8ad0c4b9ea9abe0331599 100644 --- a/Source/WebCore/platform/animation/AnimationUtilities.h +++ b/Source/WebCore/platform/animation/AnimationUtilities.h @@ -37,7 +37,7 @@ inline int blend(int from, int to, double progress) inline unsigned blend(unsigned from, unsigned to, double progress) { - return static_cast(lround(static_cast(from) + static_cast(to - from) * progress)); + return static_cast(lround(to > from ? static_cast(from) + static_cast(to - from) * progress : static_cast(from) - static_cast(from - to) * progress)); } inline double blend(double from, double to, double progress)