Changeset 181262 in webkit


Ignore:
Timestamp:
Mar 9, 2015 4:31:47 AM (9 years ago)
Author:
youenn.fablet@crf.canon.fr
Message:

ReadableStream does not not need to pass itself as callback parameter
https://bugs.webkit.org/show_bug.cgi?id=142399

Reviewed by Darin Adler.

No change in behavior.

  • Modules/streams/ReadableStream.h: Remove ReadableStream parameter from SuccessCallback definition.
  • bindings/js/JSReadableStreamCustom.cpp:

(WebCore::JSReadableStream::ready): Capture JSReadableStream instance instead.
(WebCore::JSReadableStream::closed): Capture JSReadableStream instance instead.

Location:
trunk/Source/WebCore
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r181259 r181262  
     12015-03-09  Xabier Rodriguez Calvar  <calvaris@igalia.com> and Youenn Fablet  <youenn.fablet@crf.canon.fr>
     2
     3        ReadableStream does not not need to pass itself as callback parameter
     4        https://bugs.webkit.org/show_bug.cgi?id=142399
     5
     6        Reviewed by Darin Adler.
     7
     8        No change in behavior.
     9
     10        * Modules/streams/ReadableStream.h: Remove ReadableStream parameter from SuccessCallback definition.
     11        * bindings/js/JSReadableStreamCustom.cpp:
     12        (WebCore::JSReadableStream::ready): Capture JSReadableStream instance instead.
     13        (WebCore::JSReadableStream::closed): Capture JSReadableStream instance instead.
     14
    1152015-03-08  Dean Jackson  <dino@apple.com>
    216
  • trunk/Source/WebCore/Modules/streams/ReadableStream.h

    r180801 r181262  
    6262    String state() const;
    6363
    64     typedef std::function<void(RefPtr<ReadableStream>)> SuccessCallback;
     64    typedef std::function<void()> SuccessCallback;
    6565    void closed(SuccessCallback);
    6666    void ready(SuccessCallback);
  • trunk/Source/WebCore/bindings/js/JSReadableStreamCustom.cpp

    r180559 r181262  
    7171    JSPromiseDeferred* promiseDeferred = getOrCreatePromiseDeferredFromObject(exec, this, globalObject(), readyPromiseSlotName());
    7272    DeferredWrapper wrapper(exec, globalObject(), promiseDeferred);
    73     auto successCallback = [wrapper](RefPtr<ReadableStream> stream) mutable {
    74         wrapper.resolve(stream.get());
     73    auto successCallback = [wrapper, this]() mutable {
     74        wrapper.resolve(&impl());
    7575    };
    7676    impl().ready(WTF::move(successCallback));
     
    8989    JSPromiseDeferred* promiseDeferred = getOrCreatePromiseDeferredFromObject(exec, this, globalObject(), closedPromiseSlotName());
    9090    DeferredWrapper wrapper(exec, globalObject(), promiseDeferred);
    91     auto successCallback = [wrapper](RefPtr<ReadableStream> stream) mutable {
    92         wrapper.resolve(stream.get());
     91    auto successCallback = [wrapper, this]() mutable {
     92        wrapper.resolve(&impl());
    9393    };
    9494    impl().closed(WTF::move(successCallback));
Note: See TracChangeset for help on using the changeset viewer.