Changeset 201675 in webkit


Ignore:
Timestamp:
Jun 3, 2016 6:31:47 PM (8 years ago)
Author:
Chris Dumez
Message:

Modernize a few more lambda captures
https://bugs.webkit.org/show_bug.cgi?id=158370

Reviewed by Brady Eidson.

Source/WebCore:

  • workers/DedicatedWorkerGlobalScope.cpp:

(WebCore::DedicatedWorkerGlobalScope::postMessage):

  • workers/DedicatedWorkerGlobalScope.h:
  • workers/Worker.cpp:

(WebCore::Worker::postMessage):

  • workers/Worker.h:
  • workers/WorkerEventQueue.cpp:

(WebCore::WorkerEventQueue::enqueueEvent):

  • workers/WorkerGlobalScopeProxy.h:
  • workers/WorkerMessagingProxy.cpp:

(WebCore::WorkerMessagingProxy::postMessageToWorkerObject):
(WebCore::WorkerMessagingProxy::postMessageToWorkerGlobalScope):

  • workers/WorkerMessagingProxy.h:
  • workers/WorkerObjectProxy.h:

Source/WebKit:

  • Storage/StorageTracker.cpp:

(WebCore::StorageTracker::deleteOrigin):

Location:
trunk/Source
Files:
12 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r201673 r201675  
     12016-06-03  Chris Dumez  <cdumez@apple.com>
     2
     3        Modernize a few more lambda captures
     4        https://bugs.webkit.org/show_bug.cgi?id=158370
     5
     6        Reviewed by Brady Eidson.
     7
     8        * workers/DedicatedWorkerGlobalScope.cpp:
     9        (WebCore::DedicatedWorkerGlobalScope::postMessage):
     10        * workers/DedicatedWorkerGlobalScope.h:
     11        * workers/Worker.cpp:
     12        (WebCore::Worker::postMessage):
     13        * workers/Worker.h:
     14        * workers/WorkerEventQueue.cpp:
     15        (WebCore::WorkerEventQueue::enqueueEvent):
     16        * workers/WorkerGlobalScopeProxy.h:
     17        * workers/WorkerMessagingProxy.cpp:
     18        (WebCore::WorkerMessagingProxy::postMessageToWorkerObject):
     19        (WebCore::WorkerMessagingProxy::postMessageToWorkerGlobalScope):
     20        * workers/WorkerMessagingProxy.h:
     21        * workers/WorkerObjectProxy.h:
     22
    1232016-06-03  Commit Queue  <commit-queue@webkit.org>
    224
  • trunk/Source/WebCore/workers/DedicatedWorkerGlobalScope.cpp

    r199853 r201675  
    6464}
    6565
    66 void DedicatedWorkerGlobalScope::postMessage(PassRefPtr<SerializedScriptValue> message, MessagePort* port, ExceptionCode& ec)
     66void DedicatedWorkerGlobalScope::postMessage(RefPtr<SerializedScriptValue>&& message, MessagePort* port, ExceptionCode& ec)
    6767{
    6868    MessagePortArray ports;
    6969    if (port)
    7070        ports.append(port);
    71     postMessage(message, &ports, ec);
     71    postMessage(WTFMove(message), &ports, ec);
    7272}
    7373
    74 void DedicatedWorkerGlobalScope::postMessage(PassRefPtr<SerializedScriptValue> message, const MessagePortArray* ports, ExceptionCode& ec)
     74void DedicatedWorkerGlobalScope::postMessage(RefPtr<SerializedScriptValue>&& message, const MessagePortArray* ports, ExceptionCode& ec)
    7575{
    7676    // Disentangle the port in preparation for sending it to the remote context.
    77     std::unique_ptr<MessagePortChannelArray> channels = MessagePort::disentanglePorts(ports, ec);
     77    auto channels = MessagePort::disentanglePorts(ports, ec);
    7878    if (ec)
    7979        return;
    80     thread().workerObjectProxy().postMessageToWorkerObject(message, WTFMove(channels));
     80    thread().workerObjectProxy().postMessageToWorkerObject(WTFMove(message), WTFMove(channels));
    8181}
    8282
  • trunk/Source/WebCore/workers/DedicatedWorkerGlobalScope.h

    r199853 r201675  
    5454        EventTargetInterface eventTargetInterface() const override;
    5555
    56         void postMessage(PassRefPtr<SerializedScriptValue>, const MessagePortArray*, ExceptionCode&);
     56        void postMessage(RefPtr<SerializedScriptValue>&&, const MessagePortArray*, ExceptionCode&);
    5757        // Needed for Objective-C bindings (see bug 28774).
    58         void postMessage(PassRefPtr<SerializedScriptValue>, MessagePort*, ExceptionCode&);
     58        void postMessage(RefPtr<SerializedScriptValue>&&, MessagePort*, ExceptionCode&);
    5959
    6060        DedicatedWorkerThread& thread();
  • trunk/Source/WebCore/workers/Worker.cpp

    r197706 r201675  
    108108}
    109109
    110 void Worker::postMessage(PassRefPtr<SerializedScriptValue> message, MessagePort* port, ExceptionCode& ec)
     110void Worker::postMessage(RefPtr<SerializedScriptValue>&& message, MessagePort* port, ExceptionCode& ec)
    111111{
    112112    MessagePortArray ports;
    113113    if (port)
    114114        ports.append(port);
    115     postMessage(message, &ports, ec);
     115    postMessage(WTFMove(message), &ports, ec);
    116116}
    117117
    118 void Worker::postMessage(PassRefPtr<SerializedScriptValue> message, const MessagePortArray* ports, ExceptionCode& ec)
     118void Worker::postMessage(RefPtr<SerializedScriptValue>&& message, const MessagePortArray* ports, ExceptionCode& ec)
    119119{
    120120    // Disentangle the port in preparation for sending it to the remote context.
    121     std::unique_ptr<MessagePortChannelArray> channels = MessagePort::disentanglePorts(ports, ec);
     121    auto channels = MessagePort::disentanglePorts(ports, ec);
    122122    if (ec)
    123123        return;
    124     m_contextProxy->postMessageToWorkerGlobalScope(message, WTFMove(channels));
     124    m_contextProxy->postMessageToWorkerGlobalScope(WTFMove(message), WTFMove(channels));
    125125}
    126126
  • trunk/Source/WebCore/workers/Worker.h

    r197566 r201675  
    5656        EventTargetInterface eventTargetInterface() const override { return WorkerEventTargetInterfaceType; }
    5757
    58         void postMessage(PassRefPtr<SerializedScriptValue> message, const MessagePortArray*, ExceptionCode&);
     58        void postMessage(RefPtr<SerializedScriptValue>&& message, const MessagePortArray*, ExceptionCode&);
    5959        // Needed for Objective-C bindings (see bug 28774).
    60         void postMessage(PassRefPtr<SerializedScriptValue> message, MessagePort*, ExceptionCode&);
     60        void postMessage(RefPtr<SerializedScriptValue>&& message, MessagePort*, ExceptionCode&);
    6161
    6262        void terminate();
  • trunk/Source/WebCore/workers/WorkerEventQueue.cpp

    r194496 r201675  
    8989        return false;
    9090
    91     EventDispatcher* eventDispatcherPtr = new EventDispatcher(event.copyRef(), *this);
    92     m_eventDispatcherMap.add(event.ptr(), eventDispatcherPtr);
    93     m_scriptExecutionContext.postTask([eventDispatcherPtr] (ScriptExecutionContext&) {
    94         std::unique_ptr<EventDispatcher> eventDispatcher(eventDispatcherPtr);
     91    auto* eventPtr = event.ptr();
     92    auto eventDispatcher = std::make_unique<EventDispatcher>(WTFMove(event), *this);
     93    m_eventDispatcherMap.add(eventPtr, eventDispatcher.get());
     94    m_scriptExecutionContext.postTask([eventDispatcher = WTFMove(eventDispatcher)] (ScriptExecutionContext&) {
    9595        eventDispatcher->dispatch();
    9696    });
  • trunk/Source/WebCore/workers/WorkerGlobalScopeProxy.h

    r196242 r201675  
    5454        virtual void terminateWorkerGlobalScope() = 0;
    5555
    56         virtual void postMessageToWorkerGlobalScope(PassRefPtr<SerializedScriptValue>, std::unique_ptr<MessagePortChannelArray>) = 0;
     56        virtual void postMessageToWorkerGlobalScope(RefPtr<SerializedScriptValue>&&, std::unique_ptr<MessagePortChannelArray>) = 0;
    5757
    5858        virtual bool hasPendingActivity() const = 0;
  • trunk/Source/WebCore/workers/WorkerMessagingProxy.cpp

    r201594 r201675  
    8989}
    9090
    91 void WorkerMessagingProxy::postMessageToWorkerObject(PassRefPtr<SerializedScriptValue> message, std::unique_ptr<MessagePortChannelArray> channels)
    92 {
    93     MessagePortChannelArray* channelsPtr = channels.release();
    94     m_scriptExecutionContext->postTask([this, channelsPtr, message] (ScriptExecutionContext& context) {
     91void WorkerMessagingProxy::postMessageToWorkerObject(RefPtr<SerializedScriptValue>&& message, std::unique_ptr<MessagePortChannelArray> channels)
     92{
     93    m_scriptExecutionContext->postTask([this, channels = WTFMove(channels), message = WTFMove(message)] (ScriptExecutionContext& context) mutable {
    9594        Worker* workerObject = this->workerObject();
    9695        if (!workerObject || askedToTerminate())
    9796            return;
    9897
    99         std::unique_ptr<MessagePortArray> ports = MessagePort::entanglePorts(context, std::unique_ptr<MessagePortChannelArray>(channelsPtr));
    100         workerObject->dispatchEvent(MessageEvent::create(WTFMove(ports), message));
    101     });
    102 }
    103 
    104 void WorkerMessagingProxy::postMessageToWorkerGlobalScope(PassRefPtr<SerializedScriptValue> message, std::unique_ptr<MessagePortChannelArray> channels)
    105 {
    106     if (m_askedToTerminate)
    107         return;
    108 
    109     MessagePortChannelArray* channelsPtr = channels.release();
    110     ScriptExecutionContext::Task task([channelsPtr, message] (ScriptExecutionContext& scriptContext) {
     98        auto ports = MessagePort::entanglePorts(context, WTFMove(channels));
     99        workerObject->dispatchEvent(MessageEvent::create(WTFMove(ports), WTFMove(message)));
     100    });
     101}
     102
     103void WorkerMessagingProxy::postMessageToWorkerGlobalScope(RefPtr<SerializedScriptValue>&& message, std::unique_ptr<MessagePortChannelArray> channels)
     104{
     105    if (m_askedToTerminate)
     106        return;
     107
     108    ScriptExecutionContext::Task task([channels = WTFMove(channels), message = WTFMove(message)] (ScriptExecutionContext& scriptContext) mutable {
    111109        ASSERT_WITH_SECURITY_IMPLICATION(scriptContext.isWorkerGlobalScope());
    112         DedicatedWorkerGlobalScope& context = static_cast<DedicatedWorkerGlobalScope&>(scriptContext);
    113         std::unique_ptr<MessagePortArray> ports = MessagePort::entanglePorts(scriptContext, std::unique_ptr<MessagePortChannelArray>(channelsPtr));
    114         context.dispatchEvent(MessageEvent::create(WTFMove(ports), message));
     110        auto& context = static_cast<DedicatedWorkerGlobalScope&>(scriptContext);
     111        auto ports = MessagePort::entanglePorts(scriptContext, WTFMove(channels));
     112        context.dispatchEvent(MessageEvent::create(WTFMove(ports), WTFMove(message)));
    115113        context.thread().workerObjectProxy().confirmMessageFromWorkerObject(context.hasPendingActivity());
    116114    });
  • trunk/Source/WebCore/workers/WorkerMessagingProxy.h

    r197563 r201675  
    5555        void startWorkerGlobalScope(const URL& scriptURL, const String& userAgent, const String& sourceCode, const ContentSecurityPolicyResponseHeaders&, bool shouldBypassMainWorldContentSecurityPolicy, WorkerThreadStartMode) override;
    5656        void terminateWorkerGlobalScope() override;
    57         void postMessageToWorkerGlobalScope(PassRefPtr<SerializedScriptValue>, std::unique_ptr<MessagePortChannelArray>) override;
     57        void postMessageToWorkerGlobalScope(RefPtr<SerializedScriptValue>&&, std::unique_ptr<MessagePortChannelArray>) override;
    5858        bool hasPendingActivity() const override;
    5959        void workerObjectDestroyed() override;
     
    6262        // Implementations of WorkerObjectProxy.
    6363        // (Only use these methods in the worker context thread.)
    64         void postMessageToWorkerObject(PassRefPtr<SerializedScriptValue>, std::unique_ptr<MessagePortChannelArray>) override;
     64        void postMessageToWorkerObject(RefPtr<SerializedScriptValue>&&, std::unique_ptr<MessagePortChannelArray>) override;
    6565        void postExceptionToWorkerObject(const String& errorMessage, int lineNumber, int columnNumber, const String& sourceURL) override;
    6666        void postConsoleMessageToWorkerObject(MessageSource, MessageLevel, const String& message, int lineNumber, int columnNumber, const String& sourceURL) override;
  • trunk/Source/WebCore/workers/WorkerObjectProxy.h

    r197563 r201675  
    4343    class WorkerObjectProxy : public WorkerReportingProxy {
    4444    public:
    45         virtual void postMessageToWorkerObject(PassRefPtr<SerializedScriptValue>, std::unique_ptr<MessagePortChannelArray>) = 0;
     45        virtual void postMessageToWorkerObject(RefPtr<SerializedScriptValue>&&, std::unique_ptr<MessagePortChannelArray>) = 0;
    4646
    4747        virtual void confirmMessageFromWorkerObject(bool hasPendingActivity) = 0;
  • trunk/Source/WebKit/ChangeLog

    r201673 r201675  
     12016-06-03  Chris Dumez  <cdumez@apple.com>
     2
     3        Modernize a few more lambda captures
     4        https://bugs.webkit.org/show_bug.cgi?id=158370
     5
     6        Reviewed by Brady Eidson.
     7
     8        * Storage/StorageTracker.cpp:
     9        (WebCore::StorageTracker::deleteOrigin):
     10
    1112016-06-03  Commit Queue  <commit-queue@webkit.org>
    212
  • trunk/Source/WebKit/Storage/StorageTracker.cpp

    r201482 r201675  
    502502    }
    503503
    504     String originIdCopy = originId.isolatedCopy();
    505     m_thread->dispatch([this, originIdCopy] {
    506         syncDeleteOrigin(originIdCopy);
     504    m_thread->dispatch([this, originId = originId.isolatedCopy()] {
     505        syncDeleteOrigin(originId);
    507506    });
    508507}
Note: See TracChangeset for help on using the changeset viewer.