Changeset 83532 in webkit


Ignore:
Timestamp:
Apr 11, 2011 4:31:47 PM (13 years ago)
Author:
cmarrin@apple.com
Message:

2011-04-11 Chris Marrin <cmarrin@apple.com>

Rubberstamped by Dan Bernstein.

xhr.responseType = 'arraybuffer' works on Mac but not on Windows
https://bugs.webkit.org/show_bug.cgi?id=50334

Got rid of guards around arraybuffer logic in XHR. ArrayBuffer and friends
are always turned on now, so there's not need for the guard. I reenabled the
test that was Skipped on Windows and it works now.

  • bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::markChildren): (WebCore::JSXMLHttpRequest::send): (WebCore::JSXMLHttpRequest::response):
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::responseArrayBuffer): (WebCore::XMLHttpRequest::setResponseType): (WebCore::XMLHttpRequest::send): (WebCore::XMLHttpRequest::clearResponseBuffers): (WebCore::XMLHttpRequest::didReceiveData):
  • xml/XMLHttpRequest.h: (WebCore::XMLHttpRequest::optionalResponseArrayBuffer):
Location:
trunk
Files:
2 deleted
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r83530 r83532  
     12011-04-11  Chris Marrin  <cmarrin@apple.com>
     2
     3        Rubberstamped by Dan Bernstein.
     4
     5        xhr.responseType = 'arraybuffer' works on Mac but not on Windows
     6        https://bugs.webkit.org/show_bug.cgi?id=50334
     7
     8        Unskipped the XHR ArrayBuffer test for Windows. I also got rid of a couple of bogus expected
     9        results. These had errors in them for what Windows used to be returning. Now the non-platform
     10        specific results files are correct for Windows.
     11
     12        * platform/win/Skipped:
     13        * platform/win/fast/xmlhttprequest/xmlhttprequest-responsetype-abort-expected.txt: Removed.
     14        * platform/win/fast/xmlhttprequest/xmlhttprequest-responsetype-arraybuffer-expected.txt: Removed.
     15
    1162011-02-03  Martin Robinson  <mrobinson@igalia.com>
    217
  • trunk/LayoutTests/platform/win/Skipped

    r83479 r83532  
    11731173fast/js/i18n-bindings-locale.html
    11741174
    1175 # For https://bugs.webkit.org/show_bug.cgi?id=54519
    1176 fast/xmlhttprequest/xmlhttprequest-responsetype-arraybuffer.html
    1177 
    11781175# https://bugs.webkit.org/show_bug.cgi?id=55921
    11791176# Windows port doesn't support HTML in pastes.
  • trunk/Source/WebCore/ChangeLog

    r83527 r83532  
     12011-04-11  Chris Marrin  <cmarrin@apple.com>
     2
     3        Rubberstamped by Dan Bernstein.
     4
     5        xhr.responseType = 'arraybuffer' works on Mac but not on Windows
     6        https://bugs.webkit.org/show_bug.cgi?id=50334
     7
     8        Got rid of guards around arraybuffer logic in XHR. ArrayBuffer and friends
     9        are always turned on now, so there's not need for the guard. I reenabled the
     10        test that was Skipped on Windows and it works now.
     11
     12        * bindings/js/JSXMLHttpRequestCustom.cpp:
     13        (WebCore::JSXMLHttpRequest::markChildren):
     14        (WebCore::JSXMLHttpRequest::send):
     15        (WebCore::JSXMLHttpRequest::response):
     16        * xml/XMLHttpRequest.cpp:
     17        (WebCore::XMLHttpRequest::responseArrayBuffer):
     18        (WebCore::XMLHttpRequest::setResponseType):
     19        (WebCore::XMLHttpRequest::send):
     20        (WebCore::XMLHttpRequest::clearResponseBuffers):
     21        (WebCore::XMLHttpRequest::didReceiveData):
     22        * xml/XMLHttpRequest.h:
     23        (WebCore::XMLHttpRequest::optionalResponseArrayBuffer):
     24
    1252011-04-11  Anna Cavender  <annacc@chromium.org>
    226
  • trunk/Source/WebCore/bindings/js/JSXMLHttpRequestCustom.cpp

    r76600 r83532  
    6565        markDOMObjectWrapper(markStack, *Heap::heap(this)->globalData(), responseDocument);
    6666
    67 #if ENABLE(WEBGL) || ENABLE(BLOB)
    6867    if (ArrayBuffer* responseArrayBuffer = m_impl->optionalResponseArrayBuffer())
    6968        markDOMObjectWrapper(markStack, *Heap::heap(this)->globalData(), responseArrayBuffer);
    70 #endif
    7169
    7270#if ENABLE(XHR_RESPONSE_BLOB)
     
    125123        else if (val.inherits(&JSDOMFormData::s_info))
    126124            impl()->send(toDOMFormData(val), ec);
    127 #if ENABLE(WEBGL) || ENABLE(BLOB)
    128125        else if (val.inherits(&JSArrayBuffer::s_info))
    129126            impl()->send(toArrayBuffer(val), ec);
    130 #endif
    131127        else
    132128            impl()->send(ustringToString(val.toString(exec)), ec);
     
    190186
    191187    case XMLHttpRequest::ResponseTypeArrayBuffer:
    192 #if ENABLE(WEBGL) || ENABLE(BLOB)
    193188        {
    194189            ExceptionCode ec = 0;
     
    200195            return toJS(exec, globalObject(), arrayBuffer);
    201196        }
    202 #else
    203         return jsUndefined();
    204 #endif
    205197    }
    206198
  • trunk/Source/WebCore/xml/XMLHttpRequest.cpp

    r83385 r83532  
    272272#endif
    273273
    274 #if ENABLE(WEBGL) || ENABLE(BLOB)
    275274ArrayBuffer* XMLHttpRequest::responseArrayBuffer(ExceptionCode& ec)
    276275{
     
    293292    return 0;
    294293}
    295 #endif
    296294
    297295void XMLHttpRequest::setResponseType(const String& responseType, ExceptionCode& ec)
     
    313311#endif
    314312    } else if (responseType == "arraybuffer") {
    315 #if ENABLE(WEBGL) || ENABLE(BLOB)
    316313        m_responseTypeCode = ResponseTypeArrayBuffer;
    317 #endif
    318314    } else
    319315        ec = SYNTAX_ERR;
     
    587583}
    588584
    589 #if ENABLE(WEBGL) || ENABLE(BLOB)
    590585void XMLHttpRequest::send(ArrayBuffer* body, ExceptionCode& ec)
    591586{
     
    601596    createRequest(ec);
    602597}
    603 #endif
    604598
    605599void XMLHttpRequest::createRequest(ExceptionCode& ec)
     
    740734    m_responseBlob = 0;
    741735#endif
    742 #if ENABLE(WEBGL) || ENABLE(BLOB)
    743736    m_binaryResponseBuilder.clear();
    744737    m_responseArrayBuffer.clear();
    745 #endif
    746738}
    747739
     
    10771069    if (useDecoder)
    10781070        m_responseBuilder.append(m_decoder->decode(data, len));
    1079 #if ENABLE(WEBGL) || ENABLE(BLOB)
    10801071    else if (responseTypeCode() == ResponseTypeArrayBuffer) {
    10811072        // Buffer binary data.
     
    10841075        m_binaryResponseBuilder->append(data, len);
    10851076    }
    1086 #endif
    10871077
    10881078    if (!m_error) {
  • trunk/Source/WebCore/xml/XMLHttpRequest.h

    r78782 r83532  
    9696    void send(Blob*, ExceptionCode&);
    9797    void send(DOMFormData*, ExceptionCode&);
    98 #if ENABLE(WEBGL) || ENABLE(BLOB)
    9998    void send(ArrayBuffer*, ExceptionCode&);
    100 #endif
    10199    void abort();
    102100    void setRequestHeader(const AtomicString& name, const String& value, ExceptionCode&);
     
    116114    ResponseTypeCode responseTypeCode() const { return m_responseTypeCode; }
    117115   
    118 #if ENABLE(WEBGL) || ENABLE(BLOB)
    119116    // response attribute has custom getter.
    120117    ArrayBuffer* responseArrayBuffer(ExceptionCode&);
    121118    ArrayBuffer* optionalResponseArrayBuffer() const { return m_responseArrayBuffer.get(); }
    122 #endif
    123119
    124120    void setLastSendLineNumber(unsigned lineNumber) { m_lastSendLineNumber = lineNumber; }
     
    208204    mutable RefPtr<Document> m_responseXML;
    209205   
    210 #if ENABLE(WEBGL) || ENABLE(BLOB)
    211206    RefPtr<SharedBuffer> m_binaryResponseBuilder;
    212207    mutable RefPtr<ArrayBuffer> m_responseArrayBuffer;
    213 #endif
    214208
    215209    bool m_error;
Note: See TracChangeset for help on using the changeset viewer.