Bug 24889
Summary: | Shortening a <select>'s length is n^2 | ||
---|---|---|---|
Product: | WebKit | Reporter: | Peter Kasting <pkasting> |
Component: | DOM | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED DUPLICATE | ||
Severity: | Normal | CC: | ap, hyatt |
Priority: | P2 | ||
Version: | 528+ (Nightly build) | ||
Hardware: | PC | ||
OS: | All |
Peter Kasting
LayoutTests/fast/forms/select-max-length.html sets the length of a 10,000 item select to 0.
This takes a ridiculously long time. Looking in HTMLSelectElement::setLength(), when we shorten a select to length n, we do it by repeatedly removing the element at position n, which moves the whole rest of the list up to fill in the hole.
I'm not sure what the required semantics of this operation are, but removing all these elements at once, or at least removing them from length() down to n, would both be much better.
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Peter Kasting
CCing hyatt because he'll know the right people to care about perf here.
Mark Rowe (bdash)
*** This bug has been marked as a duplicate of 24876 ***