Changeset 188633 in webkit
- Timestamp:
- Aug 18, 2015 10:52:28 PM (9 years ago)
- Location:
- trunk/Source
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WTF/ChangeLog
r188612 r188633 1 2015-08-18 Zan Dobersek <zdobersek@igalia.com> 2 3 [GLib] GMainLoopSource should receive the std::function<> objects through rvalue references 4 https://bugs.webkit.org/show_bug.cgi?id=147981 5 6 Reviewed by Carlos Garcia Campos. 7 8 Scheduling methods on GMainLoopSource and GThreadSafeMainLoopSource should 9 have the std::function<> objects passed through rvalue references, and should 10 move the passed-in objects forward when required. 11 12 * wtf/glib/GMainLoopSource.cpp: 13 (WTF::GMainLoopSource::schedule): 14 (WTF::GMainLoopSource::scheduleAfterDelay): 15 (WTF::GMainLoopSource::scheduleAndDeleteOnDestroy): 16 (WTF::GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy): 17 * wtf/glib/GMainLoopSource.h: 18 * wtf/glib/GThreadSafeMainLoopSource.cpp: 19 (WTF::GThreadSafeMainLoopSource::schedule): 20 (WTF::GThreadSafeMainLoopSource::scheduleAfterDelay): 21 * wtf/glib/GThreadSafeMainLoopSource.h: 22 1 23 2015-08-18 Eric Carlson <eric.carlson@apple.com> 2 24 -
trunk/Source/WTF/wtf/glib/GMainLoopSource.cpp
r185502 r188633 98 98 } 99 99 100 void GMainLoopSource::schedule(const char* name, std::function<void ()> function, int priority, std::function<void ()>destroyFunction, GMainContext* context)100 void GMainLoopSource::schedule(const char* name, std::function<void ()>&& function, int priority, std::function<void ()>&& destroyFunction, GMainContext* context) 101 101 { 102 102 cancel(); … … 115 115 } 116 116 117 void GMainLoopSource::schedule(const char* name, std::function<bool ()> function, int priority, std::function<void ()>destroyFunction, GMainContext* context)117 void GMainLoopSource::schedule(const char* name, std::function<bool ()>&& function, int priority, std::function<void ()>&& destroyFunction, GMainContext* context) 118 118 { 119 119 cancel(); … … 132 132 } 133 133 134 void GMainLoopSource::schedule(const char* name, std::function<bool (GIOCondition)> function, GSocket* socket, GIOCondition condition, std::function<void ()>destroyFunction, GMainContext* context)134 void GMainLoopSource::schedule(const char* name, std::function<bool (GIOCondition)>&& function, GSocket* socket, GIOCondition condition, std::function<void ()>&& destroyFunction, GMainContext* context) 135 135 { 136 136 cancel(); … … 167 167 } 168 168 169 void GMainLoopSource::scheduleAfterDelay(const char* name, std::function<void ()> function, std::chrono::milliseconds delay, int priority, std::function<void ()>destroyFunction, GMainContext* context)169 void GMainLoopSource::scheduleAfterDelay(const char* name, std::function<void ()>&& function, std::chrono::milliseconds delay, int priority, std::function<void ()>&& destroyFunction, GMainContext* context) 170 170 { 171 171 cancel(); … … 184 184 } 185 185 186 void GMainLoopSource::scheduleAfterDelay(const char* name, std::function<bool ()> function, std::chrono::milliseconds delay, int priority, std::function<void ()>destroyFunction, GMainContext* context)186 void GMainLoopSource::scheduleAfterDelay(const char* name, std::function<bool ()>&& function, std::chrono::milliseconds delay, int priority, std::function<void ()>&& destroyFunction, GMainContext* context) 187 187 { 188 188 cancel(); … … 201 201 } 202 202 203 void GMainLoopSource::scheduleAfterDelay(const char* name, std::function<void ()> function, std::chrono::seconds delay, int priority, std::function<void ()>destroyFunction, GMainContext* context)203 void GMainLoopSource::scheduleAfterDelay(const char* name, std::function<void ()>&& function, std::chrono::seconds delay, int priority, std::function<void ()>&& destroyFunction, GMainContext* context) 204 204 { 205 205 cancel(); … … 218 218 } 219 219 220 void GMainLoopSource::scheduleAfterDelay(const char* name, std::function<bool ()> function, std::chrono::seconds delay, int priority, std::function<void ()>destroyFunction, GMainContext* context)220 void GMainLoopSource::scheduleAfterDelay(const char* name, std::function<bool ()>&& function, std::chrono::seconds delay, int priority, std::function<void ()>&& destroyFunction, GMainContext* context) 221 221 { 222 222 cancel(); … … 264 264 } 265 265 266 void GMainLoopSource::scheduleAfterDelay(const char* name, std::function<void ()> function, std::chrono::microseconds delay, int priority, std::function<void ()>destroyFunction, GMainContext* context)266 void GMainLoopSource::scheduleAfterDelay(const char* name, std::function<void ()>&& function, std::chrono::microseconds delay, int priority, std::function<void ()>&& destroyFunction, GMainContext* context) 267 267 { 268 268 cancel(); … … 281 281 } 282 282 283 void GMainLoopSource::scheduleAfterDelay(const char* name, std::function<bool ()> function, std::chrono::microseconds delay, int priority, std::function<void ()>destroyFunction, GMainContext* context)283 void GMainLoopSource::scheduleAfterDelay(const char* name, std::function<bool ()>&& function, std::chrono::microseconds delay, int priority, std::function<void ()>&& destroyFunction, GMainContext* context) 284 284 { 285 285 cancel(); … … 298 298 } 299 299 300 void GMainLoopSource::scheduleAndDeleteOnDestroy(const char* name, std::function<void()> function, int priority, std::function<void()>destroyFunction, GMainContext* context)301 { 302 create().schedule(name, function, priority, destroyFunction, context);303 } 304 305 void GMainLoopSource::scheduleAndDeleteOnDestroy(const char* name, std::function<bool()> function, int priority, std::function<void()>destroyFunction, GMainContext* context)306 { 307 create().schedule(name, function, priority, destroyFunction, context);308 } 309 310 void GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<void()> function, std::chrono::milliseconds delay, int priority, std::function<void()>destroyFunction, GMainContext* context)311 { 312 create().scheduleAfterDelay(name, function, delay, priority, destroyFunction, context);313 } 314 315 void GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<bool()> function, std::chrono::milliseconds delay, int priority, std::function<void()>destroyFunction, GMainContext* context)316 { 317 create().scheduleAfterDelay(name, function, delay, priority, destroyFunction, context);318 } 319 320 void GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<void()> function, std::chrono::seconds delay, int priority, std::function<void()>destroyFunction, GMainContext* context)321 { 322 create().scheduleAfterDelay(name, function, delay, priority, destroyFunction, context);323 } 324 325 void GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<bool()> function, std::chrono::seconds delay, int priority, std::function<void()>destroyFunction, GMainContext* context)326 { 327 create().scheduleAfterDelay(name, function, delay, priority, destroyFunction, context);328 } 329 330 void GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<void()> function, std::chrono::microseconds delay, int priority, std::function<void()>destroyFunction, GMainContext* context)331 { 332 create().scheduleAfterDelay(name, function, delay, priority, destroyFunction, context);333 } 334 335 void GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<bool()> function, std::chrono::microseconds delay, int priority, std::function<void()>destroyFunction, GMainContext* context)336 { 337 create().scheduleAfterDelay(name, function, delay, priority, destroyFunction, context);300 void GMainLoopSource::scheduleAndDeleteOnDestroy(const char* name, std::function<void()>&& function, int priority, std::function<void()>&& destroyFunction, GMainContext* context) 301 { 302 create().schedule(name, WTF::move(function), priority, WTF::move(destroyFunction), context); 303 } 304 305 void GMainLoopSource::scheduleAndDeleteOnDestroy(const char* name, std::function<bool()>&& function, int priority, std::function<void()>&& destroyFunction, GMainContext* context) 306 { 307 create().schedule(name, WTF::move(function), priority, WTF::move(destroyFunction), context); 308 } 309 310 void GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<void()>&& function, std::chrono::milliseconds delay, int priority, std::function<void()>&& destroyFunction, GMainContext* context) 311 { 312 create().scheduleAfterDelay(name, WTF::move(function), delay, priority, WTF::move(destroyFunction), context); 313 } 314 315 void GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<bool()>&& function, std::chrono::milliseconds delay, int priority, std::function<void()>&& destroyFunction, GMainContext* context) 316 { 317 create().scheduleAfterDelay(name, WTF::move(function), delay, priority, WTF::move(destroyFunction), context); 318 } 319 320 void GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<void()>&& function, std::chrono::seconds delay, int priority, std::function<void()>&& destroyFunction, GMainContext* context) 321 { 322 create().scheduleAfterDelay(name, WTF::move(function), delay, priority, WTF::move(destroyFunction), context); 323 } 324 325 void GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<bool()>&& function, std::chrono::seconds delay, int priority, std::function<void()>&& destroyFunction, GMainContext* context) 326 { 327 create().scheduleAfterDelay(name, WTF::move(function), delay, priority, WTF::move(destroyFunction), context); 328 } 329 330 void GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<void()>&& function, std::chrono::microseconds delay, int priority, std::function<void()>&& destroyFunction, GMainContext* context) 331 { 332 create().scheduleAfterDelay(name, WTF::move(function), delay, priority, WTF::move(destroyFunction), context); 333 } 334 335 void GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<bool()>&& function, std::chrono::microseconds delay, int priority, std::function<void()>&& destroyFunction, GMainContext* context) 336 { 337 create().scheduleAfterDelay(name, WTF::move(function), delay, priority, WTF::move(destroyFunction), context); 338 338 } 339 339 -
trunk/Source/WTF/wtf/glib/GMainLoopSource.h
r185502 r188633 51 51 WTF_EXPORT_PRIVATE bool isActive() const; 52 52 53 WTF_EXPORT_PRIVATE virtual void schedule(const char* name, std::function<void()> , int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);54 WTF_EXPORT_PRIVATE virtual void schedule(const char* name, std::function<bool()> , int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);55 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<void()> , std::chrono::milliseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);56 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<bool()> , std::chrono::milliseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);57 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<void()> , std::chrono::seconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);58 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<bool()> , std::chrono::seconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);59 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<void()> , std::chrono::microseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);60 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<bool()> , std::chrono::microseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);53 WTF_EXPORT_PRIVATE virtual void schedule(const char* name, std::function<void()>&&, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 54 WTF_EXPORT_PRIVATE virtual void schedule(const char* name, std::function<bool()>&&, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 55 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<void()>&&, std::chrono::milliseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 56 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<bool()>&&, std::chrono::milliseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 57 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<void()>&&, std::chrono::seconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 58 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<bool()>&&, std::chrono::seconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 59 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<void()>&&, std::chrono::microseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 60 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<bool()>&&, std::chrono::microseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 61 61 WTF_EXPORT_PRIVATE virtual void cancel(); 62 62 63 WTF_EXPORT_PRIVATE void schedule(const char* name, std::function<bool(GIOCondition)> , GSocket*, GIOCondition, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);63 WTF_EXPORT_PRIVATE void schedule(const char* name, std::function<bool(GIOCondition)>&&, GSocket*, GIOCondition, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 64 64 65 static void scheduleAndDeleteOnDestroy(const char* name, std::function<void()> , int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);66 static void scheduleAndDeleteOnDestroy(const char* name, std::function<bool()> , int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);67 static void scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<void()> , std::chrono::milliseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);68 static void scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<bool()> , std::chrono::milliseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);69 static void scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<void()> , std::chrono::seconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);70 static void scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<bool()> , std::chrono::seconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);71 static void scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<void()> , std::chrono::microseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);72 static void scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<bool()> , std::chrono::microseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr);65 static void scheduleAndDeleteOnDestroy(const char* name, std::function<void()>&&, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 66 static void scheduleAndDeleteOnDestroy(const char* name, std::function<bool()>&&, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 67 static void scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<void()>&&, std::chrono::milliseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 68 static void scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<bool()>&&, std::chrono::milliseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 69 static void scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<void()>&&, std::chrono::seconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 70 static void scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<bool()>&&, std::chrono::seconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 71 static void scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<void()>&&, std::chrono::microseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 72 static void scheduleAfterDelayAndDeleteOnDestroy(const char* name, std::function<bool()>&&, std::chrono::microseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr); 73 73 74 74 protected: -
trunk/Source/WTF/wtf/glib/GThreadSafeMainLoopSource.cpp
r185502 r188633 61 61 } 62 62 63 void GThreadSafeMainLoopSource::schedule(const char* name, std::function<void ()> function, int priority, std::function<void ()>destroyFunction, GMainContext* context)63 void GThreadSafeMainLoopSource::schedule(const char* name, std::function<void ()>&& function, int priority, std::function<void ()>&& destroyFunction, GMainContext* context) 64 64 { 65 65 GMutexLocker<GRecMutex> locker(m_mutex); 66 GMainLoopSource::schedule(name, function, priority, destroyFunction, context);66 GMainLoopSource::schedule(name, WTF::move(function), priority, WTF::move(destroyFunction), context); 67 67 m_context.cancellable = adoptGRef(g_cancellable_new()); 68 68 } 69 69 70 void GThreadSafeMainLoopSource::schedule(const char* name, std::function<bool ()> function, int priority, std::function<void ()>destroyFunction, GMainContext* context)70 void GThreadSafeMainLoopSource::schedule(const char* name, std::function<bool ()>&& function, int priority, std::function<void ()>&& destroyFunction, GMainContext* context) 71 71 { 72 72 GMutexLocker<GRecMutex> locker(m_mutex); 73 GMainLoopSource::schedule(name, function, priority, destroyFunction, context);73 GMainLoopSource::schedule(name, WTF::move(function), priority, WTF::move(destroyFunction), context); 74 74 m_context.cancellable = adoptGRef(g_cancellable_new()); 75 75 } 76 76 77 void GThreadSafeMainLoopSource::scheduleAfterDelay(const char* name, std::function<void ()> function, std::chrono::milliseconds delay, int priority, std::function<void ()>destroyFunction, GMainContext* context)77 void GThreadSafeMainLoopSource::scheduleAfterDelay(const char* name, std::function<void ()>&& function, std::chrono::milliseconds delay, int priority, std::function<void ()>&& destroyFunction, GMainContext* context) 78 78 { 79 79 GMutexLocker<GRecMutex> locker(m_mutex); 80 GMainLoopSource::scheduleAfterDelay(name, function, delay, priority, destroyFunction, context);80 GMainLoopSource::scheduleAfterDelay(name, WTF::move(function), delay, priority, WTF::move(destroyFunction), context); 81 81 m_context.cancellable = adoptGRef(g_cancellable_new()); 82 82 } 83 83 84 void GThreadSafeMainLoopSource::scheduleAfterDelay(const char* name, std::function<bool ()> function, std::chrono::milliseconds delay, int priority, std::function<void ()>destroyFunction, GMainContext* context)84 void GThreadSafeMainLoopSource::scheduleAfterDelay(const char* name, std::function<bool ()>&& function, std::chrono::milliseconds delay, int priority, std::function<void ()>&& destroyFunction, GMainContext* context) 85 85 { 86 86 GMutexLocker<GRecMutex> locker(m_mutex); 87 GMainLoopSource::scheduleAfterDelay(name, function, delay, priority, destroyFunction, context);87 GMainLoopSource::scheduleAfterDelay(name, WTF::move(function), delay, priority, WTF::move(destroyFunction), context); 88 88 m_context.cancellable = adoptGRef(g_cancellable_new()); 89 89 } 90 90 91 void GThreadSafeMainLoopSource::scheduleAfterDelay(const char* name, std::function<void ()> function, std::chrono::seconds delay, int priority, std::function<void ()>destroyFunction, GMainContext* context)91 void GThreadSafeMainLoopSource::scheduleAfterDelay(const char* name, std::function<void ()>&& function, std::chrono::seconds delay, int priority, std::function<void ()>&& destroyFunction, GMainContext* context) 92 92 { 93 93 GMutexLocker<GRecMutex> locker(m_mutex); 94 GMainLoopSource::scheduleAfterDelay(name, function, delay, priority, destroyFunction, context);94 GMainLoopSource::scheduleAfterDelay(name, WTF::move(function), delay, priority, WTF::move(destroyFunction), context); 95 95 m_context.cancellable = adoptGRef(g_cancellable_new()); 96 96 } 97 97 98 void GThreadSafeMainLoopSource::scheduleAfterDelay(const char* name, std::function<bool ()> function, std::chrono::seconds delay, int priority, std::function<void ()>destroyFunction, GMainContext* context)98 void GThreadSafeMainLoopSource::scheduleAfterDelay(const char* name, std::function<bool ()>&& function, std::chrono::seconds delay, int priority, std::function<void ()>&& destroyFunction, GMainContext* context) 99 99 { 100 100 GMutexLocker<GRecMutex> locker(m_mutex); 101 GMainLoopSource::scheduleAfterDelay(name, function, delay, priority, destroyFunction, context);101 GMainLoopSource::scheduleAfterDelay(name, WTF::move(function), delay, priority, WTF::move(destroyFunction), context); 102 102 m_context.cancellable = adoptGRef(g_cancellable_new()); 103 103 } -
trunk/Source/WTF/wtf/glib/GThreadSafeMainLoopSource.h
r185502 r188633 42 42 WTF_EXPORT_PRIVATE virtual ~GThreadSafeMainLoopSource(); 43 43 44 WTF_EXPORT_PRIVATE virtual void schedule(const char* name, std::function<void()> , int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr) override;45 WTF_EXPORT_PRIVATE virtual void schedule(const char* name, std::function<bool()> , int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr) override;46 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<void()> , std::chrono::milliseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr) override;47 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<bool()> , std::chrono::milliseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr) override;48 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<void()> , std::chrono::seconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr) override;49 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<bool()> , std::chrono::seconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>destroyFunction = nullptr, GMainContext* = nullptr) override;44 WTF_EXPORT_PRIVATE virtual void schedule(const char* name, std::function<void()>&&, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr) override; 45 WTF_EXPORT_PRIVATE virtual void schedule(const char* name, std::function<bool()>&&, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr) override; 46 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<void()>&&, std::chrono::milliseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr) override; 47 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<bool()>&&, std::chrono::milliseconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr) override; 48 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<void()>&&, std::chrono::seconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr) override; 49 WTF_EXPORT_PRIVATE virtual void scheduleAfterDelay(const char* name, std::function<bool()>&&, std::chrono::seconds, int priority = G_PRIORITY_DEFAULT, std::function<void()>&& destroyFunction = nullptr, GMainContext* = nullptr) override; 50 50 WTF_EXPORT_PRIVATE virtual void cancel() override; 51 51 -
trunk/Source/WebKit2/ChangeLog
r188627 r188633 1 2015-08-18 Zan Dobersek <zdobersek@igalia.com> 2 3 [GLib] GMainLoopSource should receive the std::function<> objects through rvalue references 4 https://bugs.webkit.org/show_bug.cgi?id=147981 5 6 Reviewed by Carlos Garcia Campos. 7 8 * NetworkProcess/cache/NetworkCacheIOChannelSoup.cpp: 9 (WebKit::NetworkCache::runTaskInQueue): Move the std::function<> into the scheduling call. 10 1 11 2015-08-18 Dan Bernstein <mitz@apple.com> 2 12 -
trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheIOChannelSoup.cpp
r186258 r188633 79 79 80 80 // Using nullptr as queue submits the result to the main context. 81 GMainLoopSource::scheduleAndDeleteOnDestroy("[WebKit] IOChannel task", task);81 GMainLoopSource::scheduleAndDeleteOnDestroy("[WebKit] IOChannel task", WTF::move(task)); 82 82 } 83 83
Note: See TracChangeset
for help on using the changeset viewer.