[webkit-changes] [WebKit/WebKit] 5187b7: [iOS] Maps occasionally crashes under auto layout ...

Wenson Hsieh noreply at github.com
Wed Dec 6 08:28:10 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 5187b76b861c8ce52672b4c995045678795ee15b
      https://github.com/WebKit/WebKit/commit/5187b76b861c8ce52672b4c995045678795ee15b
  Author: Wenson Hsieh <wenson_hsieh at apple.com>
  Date:   2023-12-06 (Wed, 06 Dec 2023)

  Changed paths:
    A LayoutTests/fast/forms/ios/show-date-input-in-empty-window-expected.txt
    A LayoutTests/fast/forms/ios/show-date-input-in-empty-window.html
    M LayoutTests/resources/ui-helper.js
    M Source/WebKit/UIProcess/ios/forms/WKDatePickerPopoverController.mm
    M Tools/TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl
    M Tools/TestRunnerShared/UIScriptContext/UIScriptController.h
    M Tools/WebKitTestRunner/UIScriptControllerCommon.cpp
    M Tools/WebKitTestRunner/UIScriptControllerCommon.h

  Log Message:
  -----------
  [iOS] Maps occasionally crashes under auto layout code when presenting a date picker
https://bugs.webkit.org/show_bug.cgi?id=265906
rdar://119060260

Reviewed by Aditya Keerthi.

Add some extra hardening to the logic in `-_scaleDownToFitHeightIfNeeded`, to avoid ever using 0 or
a non-finite value for `targetScale` when adjusting the date picker's layout constraints and
transform to fit within the popover container view.

* LayoutTests/fast/forms/ios/show-date-input-in-empty-window-expected.txt: Added.
* LayoutTests/fast/forms/ios/show-date-input-in-empty-window.html: Added.
* LayoutTests/resources/ui-helper.js:

Add a layout test to exercise the change, as well as test infrastructure to resize the web view
along with the containing test runner window.

(window.UIHelper.resizeWindowTo):
* Source/WebKit/UIProcess/ios/forms/WKDatePickerPopoverController.mm:
(-[WKDatePickerPopoverController _scaleDownToFitHeightIfNeeded]):
* Tools/TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* Tools/TestRunnerShared/UIScriptContext/UIScriptController.h:
(WTR::UIScriptController::resizeWindowTo):
* Tools/WebKitTestRunner/UIScriptControllerCommon.cpp:
(WTR::UIScriptControllerCommon::resizeWindowTo):
* Tools/WebKitTestRunner/UIScriptControllerCommon.h:

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




More information about the webkit-changes mailing list