[Webkit-unassigned] [Bug 10144] REGRESSION: Reproducible assertion failure in DeleteSelectionCommand::fixupWhitespace()

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Nov 10 14:29:58 PST 2006


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





------- Comment #10 from bdakin at apple.com  2006-11-10 14:29 PDT -------
This patch causes some layout test regressions that may or may not be good
changes. I do not know enough about editing to know for sure, but some of the
changes definitely seem wrong. Also, in the textarea manual test example, where
we used to assert, we now instead stop deleting entriely. Though it is hard to
believe that this could be caused by Darin's patch, it appears to be since I do
not see this problem in nightlies. 

I debugged the no-longer-deleting problem a bit found that
TypingCommand::deleteKeyPressed creates a caret instead of a range whe we stop
deleting because Selection::validate find that m_start.upstream() ==
m_end.upstream(). In the error case, upstream() goes to the very end and
returns lstVisible. When it is working correvtly (without the patch), we hit
this case:

// return current position if it is in rendered text
if (renderer->isText() && static_cast<RenderText *>(renderer)->firstTextBox())

and return Position(currentNode, renderer->caretMaxOffset()). We don't hit this
WITH the patch because firstTextBox() is null. I tried the simple solution of
calling update layout, and that does not fix the problem.

Oh! And! Making this bug extra fun, it does not reproduce if you try to set any
breakpoints. So I did all of this debugging with printfs. Man, I just love
editing.

I think someone with more editing know-how should take this one from here. Hey
Justin, wanna give this bug some love??


-- 
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