Преглед на файлове

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();