Skip to content

Commit

Permalink
Fix crash when animating -webkit-filter functions with default arguments
Browse files Browse the repository at this point in the history
This change fixes a crash in animation of -webkit-filter by always falling back
to the legacy animation code path.

BUG=592177

Review URL: https://codereview.chromium.org/1776873002

Cr-Commit-Position: refs/heads/master@{#380099}
(cherry picked from commit c22f57c)

Review URL: https://codereview.chromium.org/1782833004 .

Cr-Commit-Position: refs/branch-heads/2661@{crosswalk-project#190}
Cr-Branched-From: ef6f6ae-refs/heads/master@{#378081}
  • Loading branch information
alancutter committed Mar 11, 2016
1 parent 01e9732 commit 9d54806
Show file tree
Hide file tree
Showing 4 changed files with 95 additions and 47 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -179,13 +179,13 @@ PASS CSS Animations: property <backdrop-filter> from [grayscale(0) blur(0px)] to
PASS CSS Animations: property <backdrop-filter> from [grayscale(0) blur(0px)] to [blur(10px)] at (1) is [blur(10px)]
PASS CSS Animations: property <backdrop-filter> from [grayscale(0) blur(0px)] to [blur(10px)] at (1.5) is [blur(10px)]
PASS CSS Animations: property <backdrop-filter> from [blur(6px)] to [blur(10px) hue-rotate(180deg)] at (-0.5) is [blur(4px) hue-rotate(-90deg)]
PASS CSS Animations: property <backdrop-filter> from [blur(6px)] to [blur(10px) hue-rotate(180deg)] at (0) is [blur(6px) hue-rotate(0deg)]
FAIL CSS Animations: property <backdrop-filter> from [blur(6px)] to [blur(10px) hue-rotate(180deg)] at (0) is [blur(6px)] assert_equals: expected "blur ( 6px ) hue - rotate ( 0deg ) " but got "blur ( 6px ) "
PASS CSS Animations: property <backdrop-filter> from [blur(6px)] to [blur(10px) hue-rotate(180deg)] at (0.25) is [blur(7px) hue-rotate(45deg)]
PASS CSS Animations: property <backdrop-filter> from [blur(6px)] to [blur(10px) hue-rotate(180deg)] at (0.5) is [blur(8px) hue-rotate(90deg)]
PASS CSS Animations: property <backdrop-filter> from [blur(6px)] to [blur(10px) hue-rotate(180deg)] at (1) is [blur(10px) hue-rotate(180deg)]
PASS CSS Animations: property <backdrop-filter> from [blur(6px)] to [blur(10px) hue-rotate(180deg)] at (1.5) is [blur(12px) hue-rotate(270deg)]
PASS CSS Animations: property <backdrop-filter> from [none] to [hue-rotate(180deg)] at (-0.5) is [hue-rotate(-90deg)]
PASS CSS Animations: property <backdrop-filter> from [none] to [hue-rotate(180deg)] at (0) is [hue-rotate(0deg)]
FAIL CSS Animations: property <backdrop-filter> from [none] to [hue-rotate(180deg)] at (0) is [none] assert_equals: expected "hue - rotate ( 0deg ) " but got "none "
PASS CSS Animations: property <backdrop-filter> from [none] to [hue-rotate(180deg)] at (0.25) is [hue-rotate(45deg)]
PASS CSS Animations: property <backdrop-filter> from [none] to [hue-rotate(180deg)] at (0.5) is [hue-rotate(90deg)]
PASS CSS Animations: property <backdrop-filter> from [none] to [hue-rotate(180deg)] at (1) is [hue-rotate(180deg)]
Expand All @@ -194,22 +194,22 @@ PASS CSS Animations: property <backdrop-filter> from [hue-rotate(180deg)] to [no
PASS CSS Animations: property <backdrop-filter> from [hue-rotate(180deg)] to [none] at (0) is [hue-rotate(180deg)]
PASS CSS Animations: property <backdrop-filter> from [hue-rotate(180deg)] to [none] at (0.25) is [hue-rotate(135deg)]
PASS CSS Animations: property <backdrop-filter> from [hue-rotate(180deg)] to [none] at (0.5) is [hue-rotate(90deg)]
PASS CSS Animations: property <backdrop-filter> from [hue-rotate(180deg)] to [none] at (1) is [hue-rotate(0deg)]
FAIL CSS Animations: property <backdrop-filter> from [hue-rotate(180deg)] to [none] at (1) is [none] assert_equals: expected "hue - rotate ( 0deg ) " but got "none "
PASS CSS Animations: property <backdrop-filter> from [hue-rotate(180deg)] to [none] at (1.5) is [hue-rotate(-90deg)]
PASS CSS Animations: property <backdrop-filter> from [none] to [blur(10px)] at (-1) is [blur(0px)]
PASS CSS Animations: property <backdrop-filter> from [none] to [blur(10px)] at (0) is [blur(0px)]
FAIL CSS Animations: property <backdrop-filter> from [none] to [blur(10px)] at (0) is [none] assert_equals: expected "blur ( 0px ) " but got "none "
PASS CSS Animations: property <backdrop-filter> from [none] to [blur(10px)] at (0.5) is [blur(5px)]
PASS CSS Animations: property <backdrop-filter> from [none] to [blur(10px)] at (1) is [blur(10px)]
PASS CSS Animations: property <backdrop-filter> from [none] to [blur(10px)] at (1.5) is [blur(15px)]
PASS CSS Animations: property <backdrop-filter> from [brightness(0)] to [none] at (-1) is [brightness(0)]
PASS CSS Animations: property <backdrop-filter> from [brightness(0)] to [none] at (0) is [brightness(0)]
PASS CSS Animations: property <backdrop-filter> from [brightness(0)] to [none] at (0.5) is [brightness(0.5)]
PASS CSS Animations: property <backdrop-filter> from [brightness(0)] to [none] at (1) is [brightness(1)]
FAIL CSS Animations: property <backdrop-filter> from [brightness(0)] to [none] at (1) is [none] assert_equals: expected "brightness ( 1 ) " but got "none "
PASS CSS Animations: property <backdrop-filter> from [brightness(0)] to [none] at (1.5) is [brightness(1.5)]
PASS CSS Animations: property <backdrop-filter> from [contrast(0)] to [none] at (-1) is [contrast(0)]
PASS CSS Animations: property <backdrop-filter> from [contrast(0)] to [none] at (0) is [contrast(0)]
PASS CSS Animations: property <backdrop-filter> from [contrast(0)] to [none] at (0.5) is [contrast(0.5)]
PASS CSS Animations: property <backdrop-filter> from [contrast(0)] to [none] at (1) is [contrast(1)]
FAIL CSS Animations: property <backdrop-filter> from [contrast(0)] to [none] at (1) is [none] assert_equals: expected "contrast ( 1 ) " but got "none "
PASS CSS Animations: property <backdrop-filter> from [contrast(0)] to [none] at (1.5) is [contrast(1.5)]
PASS CSS Animations: property <backdrop-filter> from [none] to [drop-shadow(20px 10px green)] at (-1) is [drop-shadow(rgba(0, 0, 0, 0) -20px -10px 0px)]
PASS CSS Animations: property <backdrop-filter> from [none] to [drop-shadow(20px 10px green)] at (0) is [none]
Expand All @@ -222,32 +222,32 @@ PASS CSS Animations: property <backdrop-filter> from [drop-shadow(0px 0px 0px cu
PASS CSS Animations: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)] to [drop-shadow(20px 10px green)] at (1) is [drop-shadow(rgb(0, 128, 0) 20px 10px 0px)]
PASS CSS Animations: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)] to [drop-shadow(20px 10px green)] at (1.5) is [drop-shadow(rgb(0, 65, 0) 30px 15px 0px)]
PASS CSS Animations: property <backdrop-filter> from [none] to [grayscale(1)] at (-1) is [grayscale(0)]
PASS CSS Animations: property <backdrop-filter> from [none] to [grayscale(1)] at (0) is [grayscale(0)]
FAIL CSS Animations: property <backdrop-filter> from [none] to [grayscale(1)] at (0) is [none] assert_equals: expected "grayscale ( 0 ) " but got "none "
PASS CSS Animations: property <backdrop-filter> from [none] to [grayscale(1)] at (0.5) is [grayscale(0.5)]
PASS CSS Animations: property <backdrop-filter> from [none] to [grayscale(1)] at (1) is [grayscale(1)]
PASS CSS Animations: property <backdrop-filter> from [none] to [grayscale(1)] at (1.5) is [grayscale(1)]
PASS CSS Animations: property <backdrop-filter> from [none] to [hue-rotate(360deg)] at (-1) is [hue-rotate(-360deg)]
PASS CSS Animations: property <backdrop-filter> from [none] to [hue-rotate(360deg)] at (0) is [hue-rotate(0deg)]
FAIL CSS Animations: property <backdrop-filter> from [none] to [hue-rotate(360deg)] at (0) is [none] assert_equals: expected "hue - rotate ( 0deg ) " but got "none "
PASS CSS Animations: property <backdrop-filter> from [none] to [hue-rotate(360deg)] at (0.5) is [hue-rotate(180deg)]
PASS CSS Animations: property <backdrop-filter> from [none] to [hue-rotate(360deg)] at (1) is [hue-rotate(360deg)]
PASS CSS Animations: property <backdrop-filter> from [none] to [hue-rotate(360deg)] at (1.5) is [hue-rotate(540deg)]
PASS CSS Animations: property <backdrop-filter> from [none] to [invert(1)] at (-1) is [invert(0)]
PASS CSS Animations: property <backdrop-filter> from [none] to [invert(1)] at (0) is [invert(0)]
FAIL CSS Animations: property <backdrop-filter> from [none] to [invert(1)] at (0) is [none] assert_equals: expected "invert ( 0 ) " but got "none "
PASS CSS Animations: property <backdrop-filter> from [none] to [invert(1)] at (0.5) is [invert(0.5)]
PASS CSS Animations: property <backdrop-filter> from [none] to [invert(1)] at (1) is [invert(1)]
PASS CSS Animations: property <backdrop-filter> from [none] to [invert(1)] at (1.5) is [invert(1)]
PASS CSS Animations: property <backdrop-filter> from [opacity(0)] to [none] at (-1) is [opacity(0)]
PASS CSS Animations: property <backdrop-filter> from [opacity(0)] to [none] at (0) is [opacity(0)]
PASS CSS Animations: property <backdrop-filter> from [opacity(0)] to [none] at (0.5) is [opacity(0.5)]
PASS CSS Animations: property <backdrop-filter> from [opacity(0)] to [none] at (1) is [opacity(1)]
FAIL CSS Animations: property <backdrop-filter> from [opacity(0)] to [none] at (1) is [none] assert_equals: expected "opacity ( 1 ) " but got "none "
PASS CSS Animations: property <backdrop-filter> from [opacity(0)] to [none] at (1.5) is [opacity(1)]
PASS CSS Animations: property <backdrop-filter> from [saturate(0)] to [none] at (-1) is [saturate(0)]
PASS CSS Animations: property <backdrop-filter> from [saturate(0)] to [none] at (0) is [saturate(0)]
PASS CSS Animations: property <backdrop-filter> from [saturate(0)] to [none] at (0.5) is [saturate(0.5)]
PASS CSS Animations: property <backdrop-filter> from [saturate(0)] to [none] at (1) is [saturate(1)]
FAIL CSS Animations: property <backdrop-filter> from [saturate(0)] to [none] at (1) is [none] assert_equals: expected "saturate ( 1 ) " but got "none "
PASS CSS Animations: property <backdrop-filter> from [saturate(0)] to [none] at (1.5) is [saturate(1.5)]
PASS CSS Animations: property <backdrop-filter> from [none] to [sepia(1)] at (-1) is [sepia(0)]
PASS CSS Animations: property <backdrop-filter> from [none] to [sepia(1)] at (0) is [sepia(0)]
FAIL CSS Animations: property <backdrop-filter> from [none] to [sepia(1)] at (0) is [none] assert_equals: expected "sepia ( 0 ) " but got "none "
PASS CSS Animations: property <backdrop-filter> from [none] to [sepia(1)] at (0.5) is [sepia(0.5)]
PASS CSS Animations: property <backdrop-filter> from [none] to [sepia(1)] at (1) is [sepia(1)]
PASS CSS Animations: property <backdrop-filter> from [none] to [sepia(1)] at (1.5) is [sepia(1)]
Expand Down Expand Up @@ -308,13 +308,13 @@ PASS Web Animations: property <backdrop-filter> from [grayscale(0) blur(0px)] to
PASS Web Animations: property <backdrop-filter> from [grayscale(0) blur(0px)] to [blur(10px)] at (1) is [blur(10px)]
PASS Web Animations: property <backdrop-filter> from [grayscale(0) blur(0px)] to [blur(10px)] at (1.5) is [blur(10px)]
PASS Web Animations: property <backdrop-filter> from [blur(6px)] to [blur(10px) hue-rotate(180deg)] at (-0.5) is [blur(4px) hue-rotate(-90deg)]
PASS Web Animations: property <backdrop-filter> from [blur(6px)] to [blur(10px) hue-rotate(180deg)] at (0) is [blur(6px) hue-rotate(0deg)]
FAIL Web Animations: property <backdrop-filter> from [blur(6px)] to [blur(10px) hue-rotate(180deg)] at (0) is [blur(6px)] assert_equals: expected "blur ( 6px ) hue - rotate ( 0deg ) " but got "blur ( 6px ) "
PASS Web Animations: property <backdrop-filter> from [blur(6px)] to [blur(10px) hue-rotate(180deg)] at (0.25) is [blur(7px) hue-rotate(45deg)]
PASS Web Animations: property <backdrop-filter> from [blur(6px)] to [blur(10px) hue-rotate(180deg)] at (0.5) is [blur(8px) hue-rotate(90deg)]
PASS Web Animations: property <backdrop-filter> from [blur(6px)] to [blur(10px) hue-rotate(180deg)] at (1) is [blur(10px) hue-rotate(180deg)]
PASS Web Animations: property <backdrop-filter> from [blur(6px)] to [blur(10px) hue-rotate(180deg)] at (1.5) is [blur(12px) hue-rotate(270deg)]
PASS Web Animations: property <backdrop-filter> from [none] to [hue-rotate(180deg)] at (-0.5) is [hue-rotate(-90deg)]
PASS Web Animations: property <backdrop-filter> from [none] to [hue-rotate(180deg)] at (0) is [hue-rotate(0deg)]
FAIL Web Animations: property <backdrop-filter> from [none] to [hue-rotate(180deg)] at (0) is [none] assert_equals: expected "hue - rotate ( 0deg ) " but got "none "
PASS Web Animations: property <backdrop-filter> from [none] to [hue-rotate(180deg)] at (0.25) is [hue-rotate(45deg)]
PASS Web Animations: property <backdrop-filter> from [none] to [hue-rotate(180deg)] at (0.5) is [hue-rotate(90deg)]
PASS Web Animations: property <backdrop-filter> from [none] to [hue-rotate(180deg)] at (1) is [hue-rotate(180deg)]
Expand All @@ -323,22 +323,22 @@ PASS Web Animations: property <backdrop-filter> from [hue-rotate(180deg)] to [no
PASS Web Animations: property <backdrop-filter> from [hue-rotate(180deg)] to [none] at (0) is [hue-rotate(180deg)]
PASS Web Animations: property <backdrop-filter> from [hue-rotate(180deg)] to [none] at (0.25) is [hue-rotate(135deg)]
PASS Web Animations: property <backdrop-filter> from [hue-rotate(180deg)] to [none] at (0.5) is [hue-rotate(90deg)]
PASS Web Animations: property <backdrop-filter> from [hue-rotate(180deg)] to [none] at (1) is [hue-rotate(0deg)]
FAIL Web Animations: property <backdrop-filter> from [hue-rotate(180deg)] to [none] at (1) is [none] assert_equals: expected "hue - rotate ( 0deg ) " but got "none "
PASS Web Animations: property <backdrop-filter> from [hue-rotate(180deg)] to [none] at (1.5) is [hue-rotate(-90deg)]
PASS Web Animations: property <backdrop-filter> from [none] to [blur(10px)] at (-1) is [blur(0px)]
PASS Web Animations: property <backdrop-filter> from [none] to [blur(10px)] at (0) is [blur(0px)]
FAIL Web Animations: property <backdrop-filter> from [none] to [blur(10px)] at (0) is [none] assert_equals: expected "blur ( 0px ) " but got "none "
PASS Web Animations: property <backdrop-filter> from [none] to [blur(10px)] at (0.5) is [blur(5px)]
PASS Web Animations: property <backdrop-filter> from [none] to [blur(10px)] at (1) is [blur(10px)]
PASS Web Animations: property <backdrop-filter> from [none] to [blur(10px)] at (1.5) is [blur(15px)]
PASS Web Animations: property <backdrop-filter> from [brightness(0)] to [none] at (-1) is [brightness(0)]
PASS Web Animations: property <backdrop-filter> from [brightness(0)] to [none] at (0) is [brightness(0)]
PASS Web Animations: property <backdrop-filter> from [brightness(0)] to [none] at (0.5) is [brightness(0.5)]
PASS Web Animations: property <backdrop-filter> from [brightness(0)] to [none] at (1) is [brightness(1)]
FAIL Web Animations: property <backdrop-filter> from [brightness(0)] to [none] at (1) is [none] assert_equals: expected "brightness ( 1 ) " but got "none "
PASS Web Animations: property <backdrop-filter> from [brightness(0)] to [none] at (1.5) is [brightness(1.5)]
PASS Web Animations: property <backdrop-filter> from [contrast(0)] to [none] at (-1) is [contrast(0)]
PASS Web Animations: property <backdrop-filter> from [contrast(0)] to [none] at (0) is [contrast(0)]
PASS Web Animations: property <backdrop-filter> from [contrast(0)] to [none] at (0.5) is [contrast(0.5)]
PASS Web Animations: property <backdrop-filter> from [contrast(0)] to [none] at (1) is [contrast(1)]
FAIL Web Animations: property <backdrop-filter> from [contrast(0)] to [none] at (1) is [none] assert_equals: expected "contrast ( 1 ) " but got "none "
PASS Web Animations: property <backdrop-filter> from [contrast(0)] to [none] at (1.5) is [contrast(1.5)]
PASS Web Animations: property <backdrop-filter> from [none] to [drop-shadow(20px 10px green)] at (-1) is [drop-shadow(rgba(0, 0, 0, 0) -20px -10px 0px)]
PASS Web Animations: property <backdrop-filter> from [none] to [drop-shadow(20px 10px green)] at (0) is [none]
Expand All @@ -351,32 +351,32 @@ PASS Web Animations: property <backdrop-filter> from [drop-shadow(0px 0px 0px cu
PASS Web Animations: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)] to [drop-shadow(20px 10px green)] at (1) is [drop-shadow(rgb(0, 128, 0) 20px 10px 0px)]
PASS Web Animations: property <backdrop-filter> from [drop-shadow(0px 0px 0px currentcolor)] to [drop-shadow(20px 10px green)] at (1.5) is [drop-shadow(rgb(0, 65, 0) 30px 15px 0px)]
PASS Web Animations: property <backdrop-filter> from [none] to [grayscale(1)] at (-1) is [grayscale(0)]
PASS Web Animations: property <backdrop-filter> from [none] to [grayscale(1)] at (0) is [grayscale(0)]
FAIL Web Animations: property <backdrop-filter> from [none] to [grayscale(1)] at (0) is [none] assert_equals: expected "grayscale ( 0 ) " but got "none "
PASS Web Animations: property <backdrop-filter> from [none] to [grayscale(1)] at (0.5) is [grayscale(0.5)]
PASS Web Animations: property <backdrop-filter> from [none] to [grayscale(1)] at (1) is [grayscale(1)]
PASS Web Animations: property <backdrop-filter> from [none] to [grayscale(1)] at (1.5) is [grayscale(1)]
PASS Web Animations: property <backdrop-filter> from [none] to [hue-rotate(360deg)] at (-1) is [hue-rotate(-360deg)]
PASS Web Animations: property <backdrop-filter> from [none] to [hue-rotate(360deg)] at (0) is [hue-rotate(0deg)]
FAIL Web Animations: property <backdrop-filter> from [none] to [hue-rotate(360deg)] at (0) is [none] assert_equals: expected "hue - rotate ( 0deg ) " but got "none "
PASS Web Animations: property <backdrop-filter> from [none] to [hue-rotate(360deg)] at (0.5) is [hue-rotate(180deg)]
PASS Web Animations: property <backdrop-filter> from [none] to [hue-rotate(360deg)] at (1) is [hue-rotate(360deg)]
PASS Web Animations: property <backdrop-filter> from [none] to [hue-rotate(360deg)] at (1.5) is [hue-rotate(540deg)]
PASS Web Animations: property <backdrop-filter> from [none] to [invert(1)] at (-1) is [invert(0)]
PASS Web Animations: property <backdrop-filter> from [none] to [invert(1)] at (0) is [invert(0)]
FAIL Web Animations: property <backdrop-filter> from [none] to [invert(1)] at (0) is [none] assert_equals: expected "invert ( 0 ) " but got "none "
PASS Web Animations: property <backdrop-filter> from [none] to [invert(1)] at (0.5) is [invert(0.5)]
PASS Web Animations: property <backdrop-filter> from [none] to [invert(1)] at (1) is [invert(1)]
PASS Web Animations: property <backdrop-filter> from [none] to [invert(1)] at (1.5) is [invert(1)]
PASS Web Animations: property <backdrop-filter> from [opacity(0)] to [none] at (-1) is [opacity(0)]
PASS Web Animations: property <backdrop-filter> from [opacity(0)] to [none] at (0) is [opacity(0)]
PASS Web Animations: property <backdrop-filter> from [opacity(0)] to [none] at (0.5) is [opacity(0.5)]
PASS Web Animations: property <backdrop-filter> from [opacity(0)] to [none] at (1) is [opacity(1)]
FAIL Web Animations: property <backdrop-filter> from [opacity(0)] to [none] at (1) is [none] assert_equals: expected "opacity ( 1 ) " but got "none "
PASS Web Animations: property <backdrop-filter> from [opacity(0)] to [none] at (1.5) is [opacity(1)]
PASS Web Animations: property <backdrop-filter> from [saturate(0)] to [none] at (-1) is [saturate(0)]
PASS Web Animations: property <backdrop-filter> from [saturate(0)] to [none] at (0) is [saturate(0)]
PASS Web Animations: property <backdrop-filter> from [saturate(0)] to [none] at (0.5) is [saturate(0.5)]
PASS Web Animations: property <backdrop-filter> from [saturate(0)] to [none] at (1) is [saturate(1)]
FAIL Web Animations: property <backdrop-filter> from [saturate(0)] to [none] at (1) is [none] assert_equals: expected "saturate ( 1 ) " but got "none "
PASS Web Animations: property <backdrop-filter> from [saturate(0)] to [none] at (1.5) is [saturate(1.5)]
PASS Web Animations: property <backdrop-filter> from [none] to [sepia(1)] at (-1) is [sepia(0)]
PASS Web Animations: property <backdrop-filter> from [none] to [sepia(1)] at (0) is [sepia(0)]
FAIL Web Animations: property <backdrop-filter> from [none] to [sepia(1)] at (0) is [none] assert_equals: expected "sepia ( 0 ) " but got "none "
PASS Web Animations: property <backdrop-filter> from [none] to [sepia(1)] at (0.5) is [sepia(0.5)]
PASS Web Animations: property <backdrop-filter> from [none] to [sepia(1)] at (1) is [sepia(1)]
PASS Web Animations: property <backdrop-filter> from [none] to [sepia(1)] at (1.5) is [sepia(1)]
Expand Down
Loading

0 comments on commit 9d54806

Please sign in to comment.