[Webkit-unassigned] [Bug 15765] ASSERTION FAILED: m_frame->page() in FrameLoader::tokenizerProcessedData using the new GMail interface

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sat Dec 29 14:14:08 PST 2007


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


darin at apple.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #18170|review?                     |review-
               Flag|                            |




------- Comment #8 from darin at apple.com  2007-12-29 14:14 PDT -------
(From update of attachment 18170)
(In reply to comment #7)
> WebCore::Frame::pageDestroyed() is called because a Frame gets removed from the
> FrameSet as the result of JavaScript code. But there were data for the
> HTMLTokenizer of the Document and the m_timer was started. The timer fires
> after we have removed the Frame from the FrameSet.

The new m_frame->page() assert is causing trouble, but the old
m_frame->document() assert is not. I see no reason to remove both because one
is failing.

What I would expect in a case like what you describe is that either
FrameLoader::stop or FrameLoader::stopLoading would get called. The surprise
here is that the frame can be removed without loading stopping.

> FrameLoader::tokenizerProcessedData calls checkCompleted() and checkCompleted()
> is checking for if (m_frame->document()) and (m_frame->page()) at various
> places and I would argue that removing the asserts is fine as the methods may
> return 0 and checkCompleted() will continue to work

Some of those checks are for *after* checkCompleted has dispatched events like
the load event; they don't necessarily mean its good to call the function when
page is 0.

I think it might be OK to remove the assertion, but it would be better to
figure out why the load has not been stopped.


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