ソースを参照

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

Andreas Kling 3 年 前
コミット
c113c092ee
1 ファイル変更3 行追加0 行削除
  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();