Changeset 44385 in webkit


Ignore:
Timestamp:
Jun 3, 2009 9:41:49 AM (15 years ago)
Author:
Dimitri Glazkov
Message:

2009-06-03 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

  • Fix for crash (preceded by assertion) in InspectorController::didCommitLoad when reloading or navigating with the Inspector open.
  • Fix for Inspector's Elements panel being empty when Inspector first appears.

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

  • inspector/InspectorController.cpp: (WebCore::InspectorController::scriptObjectReady): (WebCore::InspectorController::didLoadResourceFromMemoryCache): (WebCore::InspectorController::identifierForInitialRequest): (WebCore::InspectorController::ensureResourceTrackingSettingsLoaded):
  • inspector/InspectorController.h:
Location:
trunk/WebCore
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/ChangeLog

    r44383 r44385  
     12009-06-03  Pavel Feldman  <pfeldman@chromium.org>
     2
     3        Reviewed by Timothy Hatcher.
     4
     5        - Fix for crash (preceded by assertion) in InspectorController::didCommitLoad
     6          when reloading or navigating with the Inspector open.
     7        - Fix for Inspector's Elements panel being empty when Inspector first appears.
     8
     9        https://bugs.webkit.org/show_bug.cgi?id=26134
     10        https://bugs.webkit.org/show_bug.cgi?id=26135
     11
     12        * inspector/InspectorController.cpp:
     13        (WebCore::InspectorController::scriptObjectReady):
     14        (WebCore::InspectorController::didLoadResourceFromMemoryCache):
     15        (WebCore::InspectorController::identifierForInitialRequest):
     16        (WebCore::InspectorController::ensureResourceTrackingSettingsLoaded):
     17        * inspector/InspectorController.h:
     18
    1192009-06-03  Adam Roben  <aroben@apple.com>
    220
  • trunk/WebCore/inspector/InspectorController.cpp

    r44322 r44385  
    808808        return;
    809809
     810    ASSERT(m_inspectedPage);
     811    bool isMainResource = loader->frame() == m_inspectedPage->mainFrame() && cachedResource->url() == loader->requestURL();
     812    ensureResourceTrackingSettingsLoaded();
     813    if (!isMainResource && !m_resourceTrackingEnabled)
     814        return;
     815   
    810816    RefPtr<InspectorResource> resource = InspectorResource::createCached(m_nextIdentifier--, loader, cachedResource);
    811817
    812     ASSERT(m_inspectedPage);
    813 
    814     if (loader->frame() == m_inspectedPage->mainFrame() && cachedResource->url() == loader->requestURL()) {
     818    if (isMainResource) {
    815819        m_mainResource = resource;
    816820        resource->markMainResource();
     
    827831    if (!enabled())
    828832        return;
    829 
    830     if (!m_resourceTrackingSettingsLoaded) {
    831         m_resourceTrackingSettingsLoaded = true;
    832         Setting resourceTracking = setting(resourceTrackingEnabledSettingName);
    833         if (resourceTracking.type() == Setting::BooleanType && resourceTracking.booleanValue())
    834             m_resourceTrackingEnabled = true;
    835     }
    836 
    837     if (!m_resourceTrackingEnabled)
     833    ASSERT(m_inspectedPage);
     834
     835    bool isMainResource = m_inspectedPage->mainFrame() && request.url() == loader->requestURL();
     836    ensureResourceTrackingSettingsLoaded();
     837    if (!isMainResource && !m_resourceTrackingEnabled)
    838838        return;
    839839
     
    842842    resource->updateRequest(request);
    843843
    844     ASSERT(m_inspectedPage);
    845 
    846     if (loader->frame() == m_inspectedPage->mainFrame() && request.url() == loader->requestURL()) {
     844    if (isMainResource) {
    847845        m_mainResource = resource;
    848846        resource->markMainResource();
     
    10061004    if (m_frontend)
    10071005        m_frontend->resourceTrackingWasDisabled();
     1006}
     1007
     1008void InspectorController::ensureResourceTrackingSettingsLoaded()
     1009{
     1010    if (m_resourceTrackingSettingsLoaded)
     1011        return;
     1012    m_resourceTrackingSettingsLoaded = true;
     1013
     1014    Setting resourceTracking = setting(resourceTrackingEnabledSettingName);
     1015    if (resourceTracking.type() == Setting::BooleanType && resourceTracking.booleanValue())
     1016        m_resourceTrackingEnabled = true;
    10081017}
    10091018
  • trunk/WebCore/inspector/InspectorController.h

    r44322 r44385  
    214214    void disableResourceTracking(bool always = false);
    215215    bool resourceTrackingEnabled() const { return m_resourceTrackingEnabled; }
     216    void ensureResourceTrackingSettingsLoaded();
    216217
    217218#if ENABLE(DATABASE)
Note: See TracChangeset for help on using the changeset viewer.