[Webkit-unassigned] [Bug 60175] [Qt]http/tests/security/xss-DENIED-xsl-document.xml fails with Qt 4.8

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon May 30 15:15:18 PDT 2011


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





--- Comment #7 from Robert Hogan <robert at webkit.org>  2011-05-30 15:15:18 PST ---
Ends with:

ASSERT failure in QUrl QPatternist::ReportContext::resolveURI(const QUrl&, const QUrl&) const: "The QAbstractUriResolver must return an absolute URI.", file environment/qreportcontext.cpp, line 472

See also:
https://bugs.webkit.org/show_bug.cgi?id=33423

It looks like returning a QUrl() for cross-origin requests in:


QUrl XSLTUriResolver::resolve(const QUrl& relative, const QUrl& baseURI) const
{
    QUrl url = baseURI.resolved(relative);

    if (!m_document->frame() || !m_document->securityOrigin()->canRequest(url))
        return QUrl();
    return url;
}

now triggers an assert in this in qreportcontext.cpp in Qt:


QUrl ReportContext::resolveURI(const QUrl &relative,
                               const QUrl &baseURI) const
{
    Q_ASSERT_X(!baseURI.isRelative(), Q_FUNC_INFO,
               "The base URI passed from the engine wasn't absolute.");

    const QAbstractUriResolver *const resolver(uriResolver());

    if(resolver)
    {
        const QUrl final(resolver->resolve(relative, baseURI));
        Q_ASSERT_X(final.isValid() || final.isEmpty(), Q_FUNC_INFO,
                   "The QAbstractUriResolver must return a valid URI.");
        Q_ASSERT_X(!final.isRelative(), Q_FUNC_INFO,
                   "The QAbstractUriResolver must return an absolute URI.");
        return final;
    }
    else
        return baseURI.resolved(relative);
}

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