This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
Steps: 1. Go to http://dev.w3.org/csswg/css3-transforms/#matrix-decomposing 2. Look at the following check for a coordinate system flip: Actual: scale[0] *= -1 should be scale[i] *= -1 // At this point, the matrix (in rows) is orthonormal. // Check for a coordinate system flip. If the determinant // is -1, then negate the matrix and the scaling factors. pdum3 = cross(row[1], row[2]) if (dot(row[0], pdum3) < 0) for (i = 0; i < 3; i++) scale[0] *= -1; row[i][0] *= -1 row[i][1] *= -1 row[i][2] *= -1 Expected: // At this point, the matrix (in rows) is orthonormal. // Check for a coordinate system flip. If the determinant // is -1, then negate the matrix and the scaling factors. pdum3 = cross(row[1], row[2]) if (dot(row[0], pdum3) < 0) for (i = 0; i < 3; i++) scale[i] *= -1; row[i][0] *= -1 row[i][1] *= -1 row[i][2] *= -1
Thank you for reporting. Fixed now.