[Webkit-unassigned] [Bug 84892] [BlackBerry] Find-in-page fails to deactivate the old active match when moving backwards

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Apr 25 17:26:40 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=84892





--- Comment #3 from Andy Chen <andchen at rim.com>  2012-04-25 17:26:38 PST ---
(From update of attachment 138888)
View in context: https://bugs.webkit.org/attachment.cgi?id=138888&action=review

>> Source/WebKit/blackberry/WebKitSupport/InPageSearchManager.cpp:107
>> +        searchStartingPoint->setEnd(m_activeMatch->endPosition());
> 
> This seems unnecessary.  It should use     static PassRefPtr<Range> create(PassRefPtr<Document>, const Position&, const Position&); to constructor the range rather can create one for the entire page and reset both start and end.
> 
> Can you explain why the copy of the range is invalid, but using the details is?  Is the problem the use of RefPtr?

I can create it in that way.

RefPtr<Range> searchStartingPoint(m_activeMatch) seems like not making a copy of Range, but making a copy of the RefPtr itself.
Later, when we call this line(122): searchStartingPoint->setEnd(searchStartingPoint->startPosition()); it actually changes the end position of m_activeMatch, so if we try to deactivate it, the range has been changed so marker was not found.

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



More information about the webkit-unassigned mailing list