[Webkit-unassigned] [Bug 208642] REGRESSION: (r257905) [ Mac wk2 Debug ] ASSERTION FAILED: !m_isolatedWorld->isNormal() || m_wrapper || !m_jsFunction

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Mar 5 17:23:31 PST 2020


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

--- Comment #13 from Yusuke Suzuki <ysuzuki at apple.com> ---
(In reply to Yusuke Suzuki from comment #11)
> > The assertion is saying that if m_jsFunction is not null, then m_wrapper shouldn't be null. This must be true because any event target with a valid JS event listener should have had a wrapper when the event listener was added, and the wrapper should never be collected as long as the event listener can be invoked.
> 
> No. m_jsFunction can be any value basically if m_wrapper is null. This can
> be collected. But this can be retained because of conservative GC, because
> user puts listener function to somewhere, and the other any reasons.
> So, m_jsFunction in this assertion is completely unrelated to what we should
> test.
> The correct assertion should be at least,
> 
> ASSERT(!m_isolatedWorld->isNormal() || m_wrapper);

Maybe, we can also ensure that,

if (m_wrapper)
    ASSERT(m_jsFunction);

But current assertion is saying,

if (!m_wrapper)
    ASSERT(!m_jsFunction);

This is not guaranteed (you can consider conservative GC. Any objects can be marked as live).

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20200306/08db831a/attachment-0001.htm>


More information about the webkit-unassigned mailing list