[Webkit-unassigned] [Bug 16076] New: DOMParser().parseFromString() freezes safari when parsing large nodes with xml safe characters

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Nov 20 16:31:42 PST 2007


http://bugs.webkit.org/show_bug.cgi?id=16076

           Summary: DOMParser().parseFromString() freezes safari when
                    parsing large nodes with xml safe characters
           Product: WebKit
           Version: 525+ (Nightly build)
          Platform: Macintosh Intel
        OS/Version: Mac OS X 10.4
            Status: UNCONFIRMED
          Severity: Normal
          Priority: P2
         Component: XML DOM
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: bkaull at yahoo-inc.com


Calling DOMParser.parseFromString can freeze safari for a long time when the
xml that is trying to be parsed contains at least one node that is extremely
large and has many xml-safe characters (ie.
"&", "<", ">", """, "'").  By large, I mean at least 10,000
repetitions of text:

For example
1. This is a long & boring message.
2. This is a long & boring message.
...
10000. This is a long & boring message.

(new DOMParser()).parseFromString( xml, "text/xml" );

The larger the number of repitions, the longer it takes to parse.  Right now
I'm seeing numbers such as:
5,000 reps  = ~1 sec
10,000 reps = ~7 sec
20,000 reps = ~32 sec
If the text of the node doesn't have any xml safe characters, the parsing runs
very quickly, generally less than a second.  I'm going to attach an example
page that has several tests that parse large sample xml text.  I have run this
test on Firefox 2(PC & Mac) and IE7 and the numbers for the tests there are
never over 3 seconds for even the largest test, 100,000 reps.

I've been testing with Safari 3.0.4 (523.12) and WebKit r27930


-- 
Configure bugmail: http://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the webkit-unassigned mailing list