Bug 122469

Summary: Clean up ScriptExecutionContext::Task and subclasses
Product: WebKit Reporter: Anders Carlsson <andersca>
Component: New BugsAssignee: Anders Carlsson <andersca>
Status: REOPENED    
Severity: Normal CC: commit-queue, darin
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 122479    
Bug Blocks:    
Attachments:
Description Flags
Patch kling: review+

Anders Carlsson
Reported 2013-10-07 15:16:43 PDT
Clean up ScriptExecutionContext::Task and subclasses
Attachments
Patch (78.94 KB, patch)
2013-10-07 15:19 PDT, Anders Carlsson
kling: review+
Anders Carlsson
Comment 1 2013-10-07 15:19:45 PDT
Andreas Kling
Comment 2 2013-10-07 15:26:01 PDT
Comment on attachment 213620 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=213620&action=review > Source/WebCore/Modules/webdatabase/Database.cpp:89 > + DerefContextTask(PassRefPtr<ScriptExecutionContext> context) explicit > Source/WebCore/Modules/webdatabase/Database.cpp:203 > + DeliverPendingCallbackTask(PassRefPtr<SQLTransaction> transaction) explicit > Source/WebCore/Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:236 > + Vector<std::unique_ptr<ScriptExecutionContext::Task>> tasks = std::move(m_pendingTasks); auto > Source/WebCore/bindings/js/JSCallbackData.h:80 > + DeleteCallbackDataTask(JSCallbackData* data) explicit > Source/WebCore/dom/Document.cpp:4900 > - OwnPtr<Task> task = m_pendingTasks[0].release(); > + auto task = std::move(m_pendingTasks[0]); > m_pendingTasks.remove(0); This code looks pretty inefficient, taking the first element out of a vector in a loop :| > Source/WebCore/workers/WorkerMessagingProxy.cpp:156 > WorkerTerminateTask(WorkerMessagingProxy* messagingProxy) explicit > Source/WebCore/workers/WorkerMessagingProxy.cpp:213 > NotifyNetworkStateChangeTask(bool isOnLine) explicit
Anders Carlsson
Comment 3 2013-10-07 15:37:36 PDT
WebKit Commit Bot
Comment 5 2013-10-07 18:29:37 PDT
Re-opened since this is blocked by bug 122479
Note You need to log in before you can comment on or make changes to this bug.