WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
Bug 44781
HTMLTreeBuilder needs to call HTMLFormElement::setDemoted
https://bugs.webkit.org/show_bug.cgi?id=44781
Summary
HTMLTreeBuilder needs to call HTMLFormElement::setDemoted
Anssi Kolehmainen
Reported
2010-08-27 11:31:18 PDT
Created
attachment 65741
[details]
Incorrect rendering with chrome Verkkokauppa.com website is rendered incorrectly in latest builds of chrome and Webkit. The search bar ("pikahaku") is moved to right outside the page area. Attached screenshots should show the issue clearly. Failing browsers: Linux, Google Chrome 7.0.503.1 (Official Build 57041) dev, WebKit 534.6 OS X, Webkit nightly, 5.0.1 (6533.17.8,
r65398
) Working browsers: Linux, Firefox 3.0.9 Linux, Konqueror 4.4.4 (Webkit and Chrome probably a month or two ago)
Attachments
Incorrect rendering with chrome
(110.98 KB, image/png)
2010-08-27 11:31 PDT
,
Anssi Kolehmainen
no flags
Details
Correct rendering with firefox
(122.52 KB, image/png)
2010-08-27 11:31 PDT
,
Anssi Kolehmainen
no flags
Details
Patch
(68.91 KB, patch)
2010-08-28 02:32 PDT
,
Adam Barth
no flags
Details
Formatted Diff
Diff
Patch for landing
(68.90 KB, patch)
2010-08-28 02:38 PDT
,
Adam Barth
commit-queue
: commit-queue-
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Anssi Kolehmainen
Comment 1
2010-08-27 11:31:41 PDT
Created
attachment 65742
[details]
Correct rendering with firefox
Anssi Kolehmainen
Comment 2
2010-08-27 11:59:33 PDT
Did some tests with webkit nightly builds:
r66130
broken
r64816
broken
r64727
broken
r64636
works
r64583
works
r64451
works
Alexey Proskuryakov
Comment 3
2010-08-27 17:07:07 PDT
HTML5 tree builder (
r64712
) fits in this range, so it's a natural suspect.
Adam Barth
Comment 4
2010-08-27 17:11:11 PDT
Thanks for the report. I can reproduce. Will investigate.
Adam Barth
Comment 5
2010-08-27 17:28:28 PDT
Reduction: <table> <tr><td>foobarbaz</td></tr> <tr><form><td>onetwothree</td></form></tr> </table>
Adam Barth
Comment 6
2010-08-27 17:33:16 PDT
I need to verify, but it looks like we get the same DOM as Firefox4, we just render it differently.
Adam Barth
Comment 7
2010-08-28 01:11:56 PDT
Looks like the parsing of this case didn't change since Safari 5. It might not be related to the parser or it might be some interaction between the parser and the rest of WebKit that we screwed up.
Eric Seidel (no email)
Comment 8
2010-08-28 01:27:13 PDT
WTF.
http://trac.webkit.org/browser/trunk/WebCore/html/LegacyHTMLTreeBuilder.cpp?rev=64727#L428
Adam Barth
Comment 9
2010-08-28 01:27:40 PDT
Apparently we're supposed to call HTMLFormElement::setDemoted.
Eric Seidel (no email)
Comment 10
2010-08-28 01:33:53 PDT
Since Hyatt created setDemoted/isDemoted, he should probably see this bug go by.
Adam Barth
Comment 11
2010-08-28 01:53:55 PDT
setDemoted has got be wrong. If you build this same DOM with createElement/appendChild from script, I bet you get the wrong rendering. We should probably use setDemoted in the first patch and then figure out the non-hacky solution in the second patch.
Adam Barth
Comment 12
2010-08-28 02:32:18 PDT
Created
attachment 65816
[details]
Patch
Eric Seidel (no email)
Comment 13
2010-08-28 02:35:21 PDT
Comment on
attachment 65816
[details]
Patch WebCore/html/parser/HTMLConstructionSite.cpp:259 + ASSERT(element->tagQName() == formTag); ->hasName(formTag) WebCore/html/parser/HTMLConstructionSite.cpp:256 + void HTMLConstructionSite::insertHTMLFormElement(AtomicHTMLToken& token, bool isDemoted) isDemoted isn't very clear. doNotAttach? donno. So wrong. But better than what we had.
Adam Barth
Comment 14
2010-08-28 02:38:12 PDT
Created
attachment 65817
[details]
Patch for landing
Adam Barth
Comment 15
2010-08-28 02:44:03 PDT
Comment on
attachment 65817
[details]
Patch for landing Clearing flags on attachment: 65817 Committed
r66306
: <
http://trac.webkit.org/changeset/66306
>
Adam Barth
Comment 16
2010-08-28 02:44:09 PDT
All reviewed patches have been landed. Closing bug.
WebKit Commit Bot
Comment 17
2010-08-28 03:34:55 PDT
Comment on
attachment 65817
[details]
Patch for landing Rejecting patch 65817 from commit-queue. Failed to run "[u'/Users/eseidel/Projects/CommitQueue/WebKitTools/Scripts/svn-apply', u'--force']" exit_code: 1 Last 500 characters of output: /parser/HTMLConstructionSite.cpp Hunk #1 FAILED at 253. 1 out of 1 hunk FAILED -- saving rejects to file WebCore/html/parser/HTMLConstructionSite.cpp.rej patching file WebCore/html/parser/HTMLConstructionSite.h Hunk #1 FAILED at 57. 1 out of 1 hunk FAILED -- saving rejects to file WebCore/html/parser/HTMLConstructionSite.h.rej patching file WebCore/html/parser/HTMLTreeBuilder.cpp Hunk #1 FAILED at 1154. 1 out of 1 hunk FAILED -- saving rejects to file WebCore/html/parser/HTMLTreeBuilder.cpp.rej Full output:
http://queues.webkit.org/results/3824056
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug