Browse Source

LibWeb: Make HTML::EventLoop::process() a no-op if there are no tasks

Andreas Kling 3 năm trước cách đây
mục cha
commit
c113c092ee
1 tập tin đã thay đổi với 3 bổ sung0 xóa
  1. 3 0
      Userland/Libraries/LibWeb/HTML/EventLoop/EventLoop.cpp

+ 3 - 0
Userland/Libraries/LibWeb/HTML/EventLoop/EventLoop.cpp

@@ -91,6 +91,9 @@ void EventLoop::process()
     // 1. Let taskQueue be one of the event loop's task queues, chosen in an implementation-defined manner, with the constraint that the chosen task queue must contain at least one runnable task. If there is no such task queue, then jump to the microtasks step below.
     auto& task_queue = m_task_queue;
 
+    if (task_queue.is_empty())
+        return;
+
     // 2. Let oldestTask be the first runnable task in taskQueue, and remove it from taskQueue.
     auto oldest_task = task_queue.take_first_runnable();