Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b29596b70459531a1d9b16b00ff2d3de5a4a467c
      
https://github.com/WebKit/WebKit/commit/b29596b70459531a1d9b16b00ff2d3de5a4a467c
  Author: Lauro Moura <[email protected]>
  Date:   2025-12-16 (Tue, 16 Dec 2025)

  Changed paths:
    M Source/WebKit/UIProcess/Automation/SimulatedInputDispatcher.cpp

  Log Message:
  -----------
  REGRESSION(304265@main) [WPE][WebDriver] Browser freeze simulating some input 
actions
https://bugs.webkit.org/show_bug.cgi?id=304085

Reviewed by Carlos Garcia Campos.

304265@main uncovered a subtle use-after-modification bug in the
transition of keyboard-related input states.

When iterating the current state reference ('a') keys, the underlying
inputSource.state might get overwritten by the eventDispatchFinished
callback before the iteration finishes. Currently, this is leading to
infinite loops on the release build, and `m_weakPosition` ListHashSet
iterator assertions in debug builds.

This commit fixes this by capturing the current state keys into
snapshots before iterating.

Covered by existing tests.

* Source/WebKit/UIProcess/Automation/SimulatedInputDispatcher.cpp:
(WebKit::SimulatedInputDispatcher::transitionInputSourceToState):

Canonical link: https://commits.webkit.org/304511@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to