Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 048b254e9fd926c46dcfef64d9e97443953ef2b0
      
https://github.com/WebKit/WebKit/commit/048b254e9fd926c46dcfef64d9e97443953ef2b0
  Author: Matt Woodrow <[email protected]>
  Date:   2023-04-07 (Fri, 07 Apr 2023)

  Changed paths:
    A LayoutTests/transforms/3d/hit-testing/hit-preserves-3d-2-expected.txt
    A LayoutTests/transforms/3d/hit-testing/hit-preserves-3d-2.html
    M Source/WebCore/rendering/RenderLayer.cpp

  Log Message:
  -----------
  transform-style:preserve-3d has incorrect hit-testing of negative z-index 
::after.
https://bugs.webkit.org/show_bug.cgi?id=255028

Reviewed by Simon Fraser.

We call hitTestList with the intention of storing the result in the temporary 
object 'hitLayer',
and only mutate the final result 'candidateLayer' if the depth test passes.
Unfortunately the 'result' variable is also part of the final output, and this 
gets mutated
on hitTestList calls that don't pass the depth test.

This creates a temporary 'tempResult' (like we do for the other sections of 
this function),
and only copies back to 'result' if the depth test passes.

* LayoutTests/transforms/3d/hit-testing/hit-preserves-3d-2-expected.txt: Added.
* LayoutTests/transforms/3d/hit-testing/hit-preserves-3d-2.html: Added.
* Source/WebCore/rendering/RenderLayer.cpp:
(WebCore::RenderLayer::hitTestLayer):

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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to