Bug 108742

Summary: Avoid String->AtomicString conversion in Attr::childrenChanged()
Product: WebKit Reporter: Benjamin Poulain <benjamin>
Component: New BugsAssignee: Benjamin Poulain <benjamin>
Status: RESOLVED FIXED    
Severity: Normal CC: buildbot, cmarcelo, darin, dglazkov, ojan.autocc, rniwa, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
buildbot: commit-queue-
Same patch none

Description Benjamin Poulain 2013-02-01 20:42:34 PST
Avoid String->AtomicString conversion in Attr::childrenChanged()
Comment 1 Benjamin Poulain 2013-02-01 20:48:11 PST
Created attachment 186210 [details]
Patch
Comment 2 Build Bot 2013-02-01 22:17:49 PST
Comment on attachment 186210 [details]
Patch

Attachment 186210 [details] did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/16330612

New failing tests:
fast/dom/Attr/change-id-via-attr-node-value.html
fast/dom/attribute-empty-value-no-children.html
dom/html/level1/core/hc_attrremovechild1.html
dom/xhtml/level1/core/hc_attrremovechild1.xhtml
dom/xhtml/level3/core/documentadoptnode16.xhtml
Comment 3 WebKit Review Bot 2013-02-02 01:53:48 PST
Comment on attachment 186210 [details]
Patch

Attachment 186210 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/16337689

New failing tests:
fast/dom/Attr/change-id-via-attr-node-value.html
dom/xhtml/level3/core/documentadoptnode16.xhtml
fast/dom/attribute-empty-value-no-children.html
dom/html/level1/core/hc_attrremovechild1.html
dom/xhtml/level1/core/hc_attrremovechild1.xhtml
Comment 4 Benjamin Poulain 2013-02-02 02:54:24 PST
Comment on attachment 186210 [details]
Patch

The failures are quite interesting. I guess somewhere in there we make the difference between null and empty atomic strings.
I'll have to investigate.
Comment 5 Build Bot 2013-02-02 03:34:50 PST
Comment on attachment 186210 [details]
Patch

Attachment 186210 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16341701

New failing tests:
fast/dom/attribute-empty-value-no-children.html
fast/dom/Attr/change-id-via-attr-node-value.html
dom/xhtml/level3/core/documentadoptnode16.xhtml
dom/html/level1/core/hc_attrremovechild1.html
dom/xhtml/level1/core/hc_attrremovechild1.xhtml
Comment 6 Darin Adler 2013-02-04 09:21:25 PST
The failure here is due to a bug in StringBuilder::toAtomicString. For zero length, StringBuilder::toAtomicString returns a null string, but it is supposed to return an empty string. StringBuilder::toString returns an empty string for zero length, as it should.
Comment 7 Darin Adler 2013-02-04 09:22:43 PST
First cut at a fix for that would be to return emptyAtom instead of AtomicString() when length is zero.
Comment 8 Benjamin Poulain 2013-02-05 12:52:20 PST
Created attachment 186680 [details]
Same patch

Same patch, after r141917 fixes AtomicString.
Comment 9 Benjamin Poulain 2013-02-05 14:35:08 PST
Comment on attachment 186680 [details]
Same patch

Clearing flags on attachment: 186680

Committed r141935: <http://trac.webkit.org/changeset/141935>
Comment 10 Benjamin Poulain 2013-02-05 14:35:10 PST
All reviewed patches have been landed.  Closing bug.