Bug 129586

Summary: Find results on simple lines are not marked correctly
Product: WebKit Reporter: Antti Koivisto <koivisto>
Component: Layout and RenderingAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal Keywords: InRadar
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
patch
none
rebased kling: review+

Antti Koivisto
Reported 2014-03-02 17:01:37 PST
Some cases end up being O(n^2)
Attachments
patch (21.41 KB, patch)
2014-03-03 08:50 PST, Antti Koivisto
no flags
rebased (21.43 KB, patch)
2014-03-03 09:38 PST, Antti Koivisto
kling: review+
Antti Koivisto
Comment 1 2014-03-03 08:50:18 PST
Antti Koivisto
Comment 2 2014-03-03 08:50:53 PST
Antti Koivisto
Comment 3 2014-03-03 09:38:41 PST
Andreas Kling
Comment 4 2014-03-03 09:48:34 PST
Comment on attachment 225662 [details] rebased View in context: https://bugs.webkit.org/attachment.cgi?id=225662&action=review r=me > Source/WebCore/editing/TextIterator.cpp:544 > - while (runEnd < str.length() && (deprecatedIsCollapsibleWhitespace(str[runEnd]) || str[runEnd] == '\t')) > + while (runEnd < end && (deprecatedIsCollapsibleWhitespace(str[runEnd]) || str[runEnd] == '\t')) It irks me that we are calling operator[] on WTF::String in a loop instead of at least just operating on the StringImpl, but this is hardly time||place for that kinda cleanup. > Source/WebCore/editing/TextIterator.cpp:1304 > - if (!renderer->firstTextBox() && text.length() > 0) > + if (!renderer->hasRenderedText() && text.length() > 0) We should make the fat linebox getters assert that we are not in simple linebox mode. (Or better yet, abstract away the ability to call them in the wrong context by encapsulating lines.)
Antti Koivisto
Comment 5 2014-03-03 13:06:08 PST
Note You need to log in before you can comment on or make changes to this bug.