[Webkit-unassigned] [Bug 53912] [Qt] Fix crashes in QMetaObject::metacall

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Feb 8 06:43:16 PST 2011


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





--- Comment #10 from Zoltan Herczeg <zherczeg at webkit.org>  2011-02-08 06:43:16 PST ---
Source/WebCore/bindings/js/ScriptController.cpp

ScriptController::~ScriptController()
{
    disconnectPlatformScriptObjects();

    if (m_cacheableBindingRootObject) {
        m_cacheableBindingRootObject->invalidate();
        m_cacheableBindingRootObject = 0;
    }

    // It's likely that destroying m_windowShells will create a lot of garbage.
    if (!m_windowShells.isEmpty()) {
        while (!m_windowShells.isEmpty())
            destroyWindowShell(m_windowShells.begin()->first.get());
        gcController().garbageCollectSoon();
    }
}

Actually we call the invalidate(); here manually, and during the gcController().garbageCollectSoon() it seems we need that m_cacheableBindingRootObject must be valid. This is the issu, I have no idea how to fix it, because I don't understand the mechanics here. Could we reorder the two ifs?

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