Bug 15724 - REGRESSION: svg/custom/foreign-object-skew.svg is broken
Summary: REGRESSION: svg/custom/foreign-object-skew.svg is broken
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: SVG (show other bugs)
Version: 528+ (Nightly build)
Hardware: Mac OS X 10.5
: P1 Normal
Assignee: Nobody
URL:
Keywords: InRadar, NeedsReduction, Regression
: 22062 (view as bug list)
Depends on:
Blocks:
 
Reported: 2007-10-27 17:14 PDT by Eric Seidel (no email)
Modified: 2012-06-25 19:55 PDT (History)
10 users (show)

See Also:


Attachments
Expected results from r27021 at LayoutTests/platform/mac/svg/custom/foreign-object-skew-expected.png (34.31 KB, image/png)
2008-04-23 16:00 PDT, David Kilzer (:ddkilzer)
no flags Details
Example of the HTML version of the bug (106.91 KB, image/png)
2012-06-25 19:53 PDT, Philip Rogers
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Eric Seidel (no email) 2007-10-27 17:14:42 PDT
REGRESSION: svg/custom/foreign-object-skew.svg is broken on TOT

I'm not sure if it's related to leopard/tiger, or if it might have broken with Hyatt's recent transform changes... not sure.  but it's broken.

Putting this in SVG for now, even if the underlying cause may not be SVG.  Would be nice if someone would run bisect-builds on this.
Comment 1 David Kilzer (:ddkilzer) 2007-10-28 16:18:22 PDT
bisect-builds reports:
Works: r27021  Fails: r27031

Comment 2 David Kilzer (:ddkilzer) 2007-11-28 22:42:42 PST
(In reply to comment #1)
> bisect-builds reports:
> Works: r27021  Fails: r27031

Nearly all of the changes are related to JavaScriptCore in this range.  Highly suspicious.

Comment 3 David Kilzer (:ddkilzer) 2007-11-28 22:42:59 PST
<rdar://problem/5619349>
Comment 4 Sam Weinig 2007-12-07 15:40:51 PST
I am not seeing this failure anymore. Eric, do you still see it?
Comment 5 David Kilzer (:ddkilzer) 2007-12-07 16:00:10 PST
(In reply to comment #1)
> bisect-builds reports:
> Works: r27021  Fails: r27031

WebKit nightly r27021 and r27031 and r28505 all look the same to me on Leopard 10.5.1 with Safari 3.0.4.

They're still all broken compared to the current svg/custom/foreign-object-skew-expected.png, though.

I think this is still an issue.

Comment 6 David Kilzer (:ddkilzer) 2007-12-07 16:09:05 PST
(In reply to comment #2)
> (In reply to comment #1)
> > bisect-builds reports:
> > Works: r27021  Fails: r27031
> 
> Nearly all of the changes are related to JavaScriptCore in this range.  Highly
> suspicious.

Probably not a JS issue--this was just speculation based on the range of changes.

Also, since r27021 fails to render properly on Leopard, the regression range may be incorrect as well.

Comment 7 David Kilzer (:ddkilzer) 2007-12-08 06:14:46 PST
WebKit nightly r28505 renders correctly on Tiger 10.4.11 (8S165) with Safari 3.0.4 (523.12).  (The size of the SVG is a bit bigger in ToT than in the expected pixel test results, however.  I believe it's actually more correct now--closer to 580x380.)

WebKit nightly r28505 renders INCORRECTLY on Leopard 10.5.1 (9B18) with Safari 3.0.4 (5523.10).

Looks like this is a Leopard-only issue.  (Radar is currently down so I can't update that bug.)
Comment 8 David Kilzer (:ddkilzer) 2007-12-08 14:30:19 PST
(In reply to comment #7)
> WebKit nightly r28505 renders correctly on Tiger 10.4.11 (8S165) with Safari
> 3.0.4 (523.12).  (The size of the SVG is a bit bigger in ToT than in the
> expected pixel test results, however.  I believe it's actually more correct
> now--closer to 580x380.)

I think the image may be showing an 800x600 screen, not just the SVG image, so ignore the size issue.

> WebKit nightly r28505 renders INCORRECTLY on Leopard 10.5.1 (9B18) with Safari
> 3.0.4 (5523.10).
> 
> Looks like this is a Leopard-only issue.  (Radar is currently down so I can't
> update that bug.)

Works on WebKit nightly r28503 with Safari 3.0.4 (523.12.9) on Windows XP SP2 as well.

Comment 9 David Kilzer (:ddkilzer) 2008-04-23 16:00:41 PDT
Created attachment 20781 [details]
Expected results from r27021 at LayoutTests/platform/mac/svg/custom/foreign-object-skew-expected.png

This is the expected result.  Compare to the current actual results to see the regression.
Comment 10 Eric Seidel (no email) 2009-04-29 15:40:39 PDT
Interesting.  Chromium/Skia does not have this problem.  Seems like it's related to the CG code path in some way.
Comment 11 Nikolas Zimmermann 2010-07-08 02:16:17 PDT
*** Bug 22062 has been marked as a duplicate of this bug. ***
Comment 12 Nikolas Zimmermann 2012-05-19 16:56:29 PDT
If I zoom in a few times the problem comes apparent again even on Lion with trunk :-(
Does anyone have some time for this bug? CC'ing the usual suspects.
Comment 13 Stephen Chenney 2012-05-21 12:53:47 PDT
Confirmed that the issue appears in Safari on Lion. Doesn't appear in Chromium.

My guess is that this is outside of SVG rendering, as the button is a native html element. I presume that SVG foreign object is the only way to skew a html button, and that skew breaks the button drawing results.
Comment 14 Stephen Chenney 2012-05-21 12:55:06 PDT
Hang on, we do see it on Mac DRT. So presumably it's Mac specific but not port specific.
Comment 15 Philip Rogers 2012-05-21 13:09:21 PDT
I suggest we expand the scope of this bug, as it doesn't appear in just SVG. This also occurs in HTML and CSS transforms:

<html>
<head>
<style type="text/css"> 
div{
width:100px;
height:75px;
border:1px solid black;
}
div#div2 {
-webkit-transform:skew(30deg, 30deg); /* Safari and Chrome */
}
</style>
</head>
<body>
<div id="div2">Hello. This is a DIV element.<input type="button" value="Halo" /></div>
</body>
</html>
Comment 16 Elliott Sprehn 2012-06-25 19:37:17 PDT
Philip, Your example looks exactly the same in Firefox, Safari (GC) and Chrome (Skia). What are you seeing that's unexpected?
Comment 17 Philip Rogers 2012-06-25 19:49:28 PDT
(In reply to comment #16)
> Philip, Your example looks exactly the same in Firefox, Safari (GC) and Chrome (Skia). What are you seeing that's unexpected?

Just checked and we're still hitting it on ToT. Zoom in a bunch and notice how the button is longer than it should be, then click on it and it'll re-render but with the correct size.
Comment 18 Philip Rogers 2012-06-25 19:53:20 PDT
Created attachment 149435 [details]
Example of the HTML version of the bug
Comment 19 Philip Rogers 2012-06-25 19:55:56 PDT
(In reply to comment #18)
> Created an attachment (id=149435) [details]
> Example of the HTML version of the bug

Just a note about what this is showing: I changed the code a bit to show 3 skewed input elements then pressed on the middle one and managed to take a screenshot.