AnimationTranslationUtil.cpp is supposed to reject large rotations (>= 180 degrees between keyframes). The current code assumes that if the lists of transforms at two consecutive keyframes do not match (i.e., are different types), then do not need to reject. The rationale is that we will revert to matrix blending -- we will collapse the lists of transform operations to matrices at each keyframe and blend those. Unfortunately, this is not true if a list is empty. It can be the case that we transition from no transform to a rotation about the z axis of 360 degrees. In this case, the first list of transform operations will be empty and the second will have a single rotation of 360 degrees. An empty list should be treated as a rotation of zero degrees.
Created attachment 158347 [details] Patch
Created attachment 158358 [details] Patch Rebased.
Comment on attachment 158358 [details] Patch OK
Comment on attachment 158358 [details] Patch Clearing flags on attachment: 158358 Committed r125702: <http://trac.webkit.org/changeset/125702>
All reviewed patches have been landed. Closing bug.