Changeset 41158 in webkit


Ignore:
Timestamp:
Feb 23, 2009 3:20:33 PM (15 years ago)
Author:
treat@webkit.org
Message:

2009-02-23 Adam Treat <adam.treat@torchmobile.com>

Reviewed by Timothy Hatcher.

https://bugs.webkit.org/show_bug.cgi?id=24106
The Qt port is crashing on exit because the tear down procedure involves
the WebCore::InspectorController trying to access the JS execution context
for a page that is being deleted. This patch amends the inspector so
that it does not try and access the execution context of the WebCore::Page
in the midst of deletion.

  • inspector/InspectorController.cpp: (WebCore::InspectorController::inspectedPageDestroyed): (WebCore::InspectorController::stopUserInitiatedProfiling):
Location:
trunk/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/ChangeLog

    r41157 r41158  
     12009-02-23  Adam Treat  <adam.treat@torchmobile.com>
     2
     3        Reviewed by Timothy Hatcher.
     4
     5        https://bugs.webkit.org/show_bug.cgi?id=24106
     6        The Qt port is crashing on exit because the tear down procedure involves
     7        the WebCore::InspectorController trying to access the JS execution context
     8        for a page that is being deleted.  This patch amends the inspector so
     9        that it does not try and access the execution context of the WebCore::Page
     10        in the midst of deletion.
     11
     12        * inspector/InspectorController.cpp:
     13        (WebCore::InspectorController::inspectedPageDestroyed):
     14        (WebCore::InspectorController::stopUserInitiatedProfiling):
     15
    1162009-02-23  David Levin  <levin@chromium.org>
    217
  • trunk/WebCore/inspector/InspectorController.cpp

    r40872 r41158  
    12211221void InspectorController::inspectedPageDestroyed()
    12221222{
    1223     close();
    1224 
    12251223    ASSERT(m_inspectedPage);
    12261224    m_inspectedPage = 0;
     1225
     1226    close();
    12271227}
    12281228
     
    18261826    title += UString::from(m_currentUserInitiatedProfileNumber);
    18271827
    1828     ExecState* exec = toJSDOMWindow(m_inspectedPage->mainFrame())->globalExec();
    1829     RefPtr<Profile> profile = Profiler::profiler()->stopProfiling(exec, title);
    1830     if (profile)
    1831         addProfile(profile, 0, UString());
     1828    if (m_inspectedPage) {
     1829        ExecState* exec = toJSDOMWindow(m_inspectedPage->mainFrame())->globalExec();
     1830        RefPtr<Profile> profile = Profiler::profiler()->stopProfiling(exec, title);
     1831        if (profile)
     1832            addProfile(profile, 0, UString());
     1833    }
    18321834
    18331835    toggleRecordButton(false);
Note: See TracChangeset for help on using the changeset viewer.