Changeset 207484 in webkit


Ignore:
Timestamp:
Oct 18, 2016 1:31:07 PM (8 years ago)
Author:
commit-queue@webkit.org
Message:

Unreviewed, rolling out r207443.
https://bugs.webkit.org/show_bug.cgi?id=163616

"Caused 5% PLT regression" (Requested by krollin on #webkit).

Reverted changeset:

"Crash in ASCIICaseInsensitiveHash::hash() when a response has
a null MIME type"
https://bugs.webkit.org/show_bug.cgi?id=163476
http://trac.webkit.org/changeset/207443

Location:
trunk
Files:
1 deleted
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r207478 r207484  
     12016-10-18  Commit Queue  <commit-queue@webkit.org>
     2
     3        Unreviewed, rolling out r207443.
     4        https://bugs.webkit.org/show_bug.cgi?id=163616
     5
     6        "Caused 5% PLT regression" (Requested by krollin on #webkit).
     7
     8        Reverted changeset:
     9
     10        "Crash in ASCIICaseInsensitiveHash::hash() when a response has
     11        a null MIME type"
     12        https://bugs.webkit.org/show_bug.cgi?id=163476
     13        http://trac.webkit.org/changeset/207443
     14
    1152016-10-18  Megan Gardner  <megan_gardner@apple.com>
    216
  • trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp

    r207443 r207484  
    12951295void WebFrameLoaderClient::transitionToCommittedFromCachedFrame(CachedFrame*)
    12961296{
    1297     auto& coreFrame = *m_frame->coreFrame();
    1298     const ResourceResponse& response = coreFrame.loader().documentLoader()->response();
    1299     m_frameHasCustomContentProvider = m_frame->isMainFrame() && m_frame->page()->shouldUseCustomContentProviderForResponse(response, coreFrame);
     1297    const ResourceResponse& response = m_frame->coreFrame()->loader().documentLoader()->response();
     1298    m_frameHasCustomContentProvider = m_frame->isMainFrame() && m_frame->page()->shouldUseCustomContentProviderForResponse(response);
    13001299    m_frameCameFromPageCache = true;
    13011300}
     
    13121311    bool shouldHideScrollbars = shouldDisableScrolling;
    13131312    IntRect fixedVisibleContentRect;
    1314     auto& coreFrame = *m_frame->coreFrame();
    13151313
    13161314#if USE(COORDINATED_GRAPHICS)
    1317     if (FrameView* frameView = coreFrame.view())
    1318         fixedVisibleContentRect = frameView->fixedVisibleContentRect();
     1315    if (m_frame->coreFrame()->view())
     1316        fixedVisibleContentRect = m_frame->coreFrame()->view()->fixedVisibleContentRect();
    13191317    if (shouldUseFixedLayout)
    13201318        shouldHideScrollbars = true;
    13211319#endif
    13221320
    1323     const ResourceResponse& response = coreFrame.loader().documentLoader()->response();
    1324     m_frameHasCustomContentProvider = isMainFrame && webPage->shouldUseCustomContentProviderForResponse(response, coreFrame);
     1321    const ResourceResponse& response = m_frame->coreFrame()->loader().documentLoader()->response();
     1322    m_frameHasCustomContentProvider = isMainFrame && webPage->shouldUseCustomContentProviderForResponse(response);
    13251323    m_frameCameFromPageCache = false;
    13261324
    13271325    ScrollbarMode defaultScrollbarMode = shouldHideScrollbars ? ScrollbarAlwaysOff : ScrollbarAuto;
    13281326
    1329     coreFrame.createView(webPage->size(), backgroundColor, isTransparent,
     1327    m_frame->coreFrame()->createView(webPage->size(), backgroundColor, isTransparent,
    13301328        webPage->fixedLayoutSize(), fixedVisibleContentRect, shouldUseFixedLayout,
    13311329        defaultScrollbarMode, /* lock */ shouldHideScrollbars, defaultScrollbarMode, /* lock */ shouldHideScrollbars);
    13321330
    1333     FrameView* frameView = coreFrame.view();
    13341331    if (int minimumLayoutWidth = webPage->minimumLayoutSize().width()) {
    13351332        int minimumLayoutHeight = std::max(webPage->minimumLayoutSize().height(), 1);
    13361333        int maximumSize = std::numeric_limits<int>::max();
    1337         frameView->enableAutoSizeMode(true, IntSize(minimumLayoutWidth, minimumLayoutHeight), IntSize(maximumSize, maximumSize));
     1334        m_frame->coreFrame()->view()->enableAutoSizeMode(true, IntSize(minimumLayoutWidth, minimumLayoutHeight), IntSize(maximumSize, maximumSize));
    13381335
    13391336        if (webPage->autoSizingShouldExpandToViewHeight())
    1340             frameView->setAutoSizeFixedMinimumHeight(webPage->size().height());
    1341     }
    1342 
    1343     frameView->setProhibitsScrolling(shouldDisableScrolling);
    1344     frameView->setVisualUpdatesAllowedByClient(!webPage->shouldExtendIncrementalRenderingSuppression());
     1337            m_frame->coreFrame()->view()->setAutoSizeFixedMinimumHeight(webPage->size().height());
     1338    }
     1339
     1340    m_frame->coreFrame()->view()->setProhibitsScrolling(shouldDisableScrolling);
     1341    m_frame->coreFrame()->view()->setVisualUpdatesAllowedByClient(!webPage->shouldExtendIncrementalRenderingSuppression());
    13451342#if PLATFORM(COCOA)
    1346     frameView->setViewExposedRect(webPage->drawingArea()->viewExposedRect());
     1343    m_frame->coreFrame()->view()->setViewExposedRect(webPage->drawingArea()->viewExposedRect());
    13471344#endif
    13481345#if PLATFORM(IOS)
    1349     frameView->setDelegatesScrolling(true);
     1346    m_frame->coreFrame()->view()->setDelegatesScrolling(true);
    13501347#endif
    13511348
    13521349    if (webPage->scrollPinningBehavior() != DoNotPin)
    1353         frameView->setScrollPinningBehavior(webPage->scrollPinningBehavior());
     1350        m_frame->coreFrame()->view()->setScrollPinningBehavior(webPage->scrollPinningBehavior());
    13541351
    13551352#if USE(COORDINATED_GRAPHICS)
    13561353    if (shouldUseFixedLayout) {
    1357         frameView->setDelegatesScrolling(shouldUseFixedLayout);
    1358         frameView->setPaintsEntireContents(shouldUseFixedLayout);
     1354        m_frame->coreFrame()->view()->setDelegatesScrolling(shouldUseFixedLayout);
     1355        m_frame->coreFrame()->view()->setPaintsEntireContents(shouldUseFixedLayout);
    13591356        return;
    13601357    }
  • trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp

    r207463 r207484  
    45784578}
    45794579
    4580 bool WebPage::canPluginHandleResponse(const ResourceResponse& response, const Frame& mainFrame)
     4580bool WebPage::canPluginHandleResponse(const ResourceResponse& response)
    45814581{
    45824582#if ENABLE(NETSCAPE_PLUGIN_API)
    4583     ASSERT(mainFrame.isMainFrame());
    45844583    uint32_t pluginLoadPolicy;
    4585     bool allowOnlyApplicationPlugins = !mainFrame.loader().subframeLoader().allowPlugins();
     4584    bool allowOnlyApplicationPlugins = !m_mainFrame->coreFrame()->loader().subframeLoader().allowPlugins();
    45864585
    45874586    uint64_t pluginProcessToken;
     
    45954594#else
    45964595    UNUSED_PARAM(response);
    4597     UNUSED_PARAM(mainFrame);
    45984596    return false;
    45994597#endif
    46004598}
    46014599
    4602 bool WebPage::shouldUseCustomContentProviderForResponse(const ResourceResponse& response, const Frame& mainFrame)
     4600bool WebPage::shouldUseCustomContentProviderForResponse(const ResourceResponse& response)
    46034601{
    46044602    // If a plug-in exists that claims to support this response, it should take precedence over the custom content provider.
    4605     if (canPluginHandleResponse(response, mainFrame))
    4606         return false;
    4607 
    4608     auto& mimeType = response.mimeType();
    4609     return mimeType.isNull() ? false : m_mimeTypesWithCustomContentProviders.contains(mimeType);
     4603    return m_mimeTypesWithCustomContentProviders.contains(response.mimeType()) && !canPluginHandleResponse(response);
    46104604}
    46114605
     
    50325026        return true;
    50335027
    5034     if (!MIMEType.isNull() && m_mimeTypesWithCustomContentProviders.contains(MIMEType))
     5028    if (m_mimeTypesWithCustomContentProviders.contains(MIMEType))
    50355029        return true;
    50365030
  • trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h

    r207463 r207484  
    845845#endif
    846846
    847     bool shouldUseCustomContentProviderForResponse(const WebCore::ResourceResponse&, const WebCore::Frame& mainFrame);
     847    bool shouldUseCustomContentProviderForResponse(const WebCore::ResourceResponse&);
     848    bool canPluginHandleResponse(const WebCore::ResourceResponse& response);
    848849
    849850    bool asynchronousPluginInitializationEnabled() const { return m_asynchronousPluginInitializationEnabled; }
     
    12271228    void setUserInterfaceLayoutDirection(uint32_t);
    12281229
    1229     bool canPluginHandleResponse(const WebCore::ResourceResponse&, const WebCore::Frame& mainFrame);
    1230 
    12311230    uint64_t m_pageID;
    12321231
  • trunk/Tools/ChangeLog

    r207463 r207484  
     12016-10-18  Commit Queue  <commit-queue@webkit.org>
     2
     3        Unreviewed, rolling out r207443.
     4        https://bugs.webkit.org/show_bug.cgi?id=163616
     5
     6        "Caused 5% PLT regression" (Requested by krollin on #webkit).
     7
     8        Reverted changeset:
     9
     10        "Crash in ASCIICaseInsensitiveHash::hash() when a response has
     11        a null MIME type"
     12        https://bugs.webkit.org/show_bug.cgi?id=163476
     13        http://trac.webkit.org/changeset/207443
     14
    1152016-10-18  Eric Carlson  <eric.carlson@apple.com>
    216
  • trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj

    r207443 r207484  
    426426                9C64DC321D76198A004B598E /* YouTubePluginReplacement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9C64DC311D76198A004B598E /* YouTubePluginReplacement.cpp */; };
    427427                A1146A8D1D2D7115000FE710 /* ContentFiltering.mm in Sources */ = {isa = PBXBuildFile; fileRef = A1146A8A1D2D704F000FE710 /* ContentFiltering.mm */; };
    428                 A125478F1DB18B9400358564 /* LoadDataWithNilMIMEType.mm in Sources */ = {isa = PBXBuildFile; fileRef = A125478D1DB18B9400358564 /* LoadDataWithNilMIMEType.mm */; };
    429428                A13EBBAA1B87428D00097110 /* WebProcessPlugIn.mm in Sources */ = {isa = PBXBuildFile; fileRef = A13EBBA91B87428D00097110 /* WebProcessPlugIn.mm */; };
    430429                A13EBBAB1B87434600097110 /* PlatformUtilitiesCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0F139E721A423A2B00F590F5 /* PlatformUtilitiesCocoa.mm */; };
     
    10561055                9C64DC311D76198A004B598E /* YouTubePluginReplacement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = YouTubePluginReplacement.cpp; sourceTree = "<group>"; };
    10571056                A1146A8A1D2D704F000FE710 /* ContentFiltering.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ContentFiltering.mm; sourceTree = "<group>"; };
    1058                 A125478D1DB18B9400358564 /* LoadDataWithNilMIMEType.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = LoadDataWithNilMIMEType.mm; sourceTree = "<group>"; };
    10591057                A13EBB491B87339E00097110 /* TestWebKitAPI.wkbundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = TestWebKitAPI.wkbundle; sourceTree = BUILT_PRODUCTS_DIR; };
    10601058                A13EBB521B87346600097110 /* WebProcessPlugIn.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = WebProcessPlugIn.xcconfig; sourceTree = "<group>"; };
     
    14301428                                0F3B94A51A77266C00DE3272 /* WKWebViewEvaluateJavaScript.mm */,
    14311429                                9984FACA1CFFAEEE008D198C /* WKWebViewTextInput.mm */,
    1432                                 A125478D1DB18B9400358564 /* LoadDataWithNilMIMEType.mm */,
    14331430                        );
    14341431                        name = "WebKit2 Cocoa";
     
    23992396                                7CCE7EC01A411A7E00447C4C /* FragmentNavigation.mm in Sources */,
    24002397                                7CCE7EF61A411AE600447C4C /* FrameMIMETypeHTML.cpp in Sources */,
    2401                                 A125478F1DB18B9400358564 /* LoadDataWithNilMIMEType.mm in Sources */,
    24022398                                7CCE7EF71A411AE600447C4C /* FrameMIMETypePNG.cpp in Sources */,
    24032399                                7C83E0BD1D0A650C00FEBCF3 /* FullscreenTopContentInset.mm in Sources */,
Note: See TracChangeset for help on using the changeset viewer.