[Webkit-unassigned] [Bug 46968] New: [Qt] QWebPage MIME type handling inconsistency with other web browsers

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Oct 1 01:49:21 PDT 2010


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

           Summary: [Qt] QWebPage MIME type handling inconsistency with
                    other web browsers
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: PC
        OS/Version: Mac OS X 10.5
            Status: NEW
          Keywords: Qt
          Severity: Normal
          Priority: P3
         Component: New Bugs
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: hausmann at webkit.org


Reported at http://bugreports.qt.nokia.com/browse/QTBUG-13323 against Qt 4.6.3:


It's not possible to load a page in QWebPage/QWebFrame that has no mime type. On other web browsers (Chrome, Firefox and IE), pages with no mime type are treated as text/html.
An example page can be found here http://ad.bannerconnect.net/st?ad_type=iframe&ad_size=160x600&section=845611 which has the response header (at time of writing)

Response header
Age:0
Cache-Control:no-store
Connection:close
Content-Length:4523
Date:Wed, 01 Sep 2010 01:43:25 GMT
Last-Modified:Wed, 01 Sep 2010 01:43:25 GMT
P3P:policyref="/w3c/p3p.xml", CP="NOI DSP COR NID CURa ADMa DEVa PSAa PSDa OUR BUS COM INT OTC PUR STA"
Pragma:no-cache
Server:YTS/1.18.4
I first thought I could override this by creating a Plugin that handles empty MIME type. It's not possible as all calls in FrameLoaderClientQt::canShowMIMEType(const String& MIMEType) in FrameLoaderClientQt.cpp first check if MIMEType.isEmpty() & return false.

FrameLoaderClientQt.cpp:508
bool FrameLoaderClientQt::canShowMIMEType(const String& MIMEType) const
{
    if (MIMETypeRegistry::isSupportedImageMIMEType(MIMEType)) <-- This checks if MIMEType.isEmpty() and returns false
        return true;

    if (MIMETypeRegistry::isSupportedNonImageMIMEType(MIMEType)) <-- This checks if MIMEType.isEmpty() and returns false
        return true;

    if (m_frame && m_frame->settings()  && m_frame->settings()->arePluginsEnabled()
        && PluginDatabase::installedPlugins()->isMIMETypeRegistered(MIMEType)) <-- This checks if MIMEType.isEmpty() and returns false
        return true;

    return false;
}

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