Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Canvas does not show results of CanvasRenderingContext2D.putImageData until forced re-render. #16157

Conversation

grorg
Copy link
Contributor

@grorg grorg commented Jul 28, 2023

fdd0bc1

Canvas does not show results of CanvasRenderingContext2D.putImageData until forced re-render.
https://bugs.webkit.org/show_bug.cgi?id=259584
rdar://112901862

Reviewed by Tim Nguyen.

The commit in 263694@main caused a regression when calculating the dirty region
of a putImageDataUpdate. It accidentally removed a reference marker on a parameter.

* Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp:
(WebCore::computeImageDataRect): Make sure the destRect parameter is a reference because it is updated.
(WebCore::CanvasRenderingContext2DBase::putImageData): Leave a fixme!

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

897573f

Misc iOS, tvOS & watchOS macOS Linux Windows
βœ… πŸ§ͺ style βœ… πŸ›  ios βœ… πŸ›  mac βœ… πŸ›  wpe βœ… πŸ›  wincairo
βœ… πŸ§ͺ bindings βœ… πŸ›  ios-sim βœ… πŸ›  mac-AS-debug βœ… πŸ§ͺ wpe-wk2
βœ… πŸ§ͺ webkitperl βœ… πŸ§ͺ ios-wk2 βœ… πŸ§ͺ api-mac βœ… πŸ›  gtk
βœ… πŸ§ͺ ios-wk2-wpt βœ… πŸ§ͺ mac-wk1 βœ… πŸ§ͺ gtk-wk2
βœ… πŸ§ͺ api-ios βœ… πŸ§ͺ mac-wk2 βœ… πŸ§ͺ api-gtk
βœ… πŸ›  tv βœ… πŸ§ͺ mac-AS-debug-wk2
βœ… πŸ›  tv-sim
βœ… πŸ›  watch
βœ… πŸ›  πŸ§ͺ unsafe-merge βœ… πŸ›  watch-sim

@grorg grorg requested review from cdumez and rniwa as code owners July 28, 2023 02:01
@grorg grorg self-assigned this Jul 28, 2023
@grorg grorg added the Canvas Bugs related to the canvas element. label Jul 28, 2023
@grorg grorg requested review from smfr and sysrqb July 28, 2023 02:07
@grorg
Copy link
Contributor Author

grorg commented Jul 28, 2023

I'm adding a test.

@grorg
Copy link
Contributor Author

grorg commented Jul 28, 2023

Alas, reftests cause a repaint so can't be used as a test. And a repaint test seems to suggest the entire canvas is repainted. So I'm not sure how to test this, sorry.

@grorg grorg added the unsafe-merge-queue Applied to send a pull request to merge-queue, but skip building and testing label Jul 28, 2023
… until forced re-render.

https://bugs.webkit.org/show_bug.cgi?id=259584
rdar://112901862

Reviewed by Tim Nguyen.

The commit in 263694@main caused a regression when calculating the dirty region
of a putImageDataUpdate. It accidentally removed a reference marker on a parameter.

* Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp:
(WebCore::computeImageDataRect): Make sure the destRect parameter is a reference because it is updated.
(WebCore::CanvasRenderingContext2DBase::putImageData): Leave a fixme!

Canonical link: https://commits.webkit.org/266397@main
@webkit-commit-queue webkit-commit-queue force-pushed the eng/Canvas-does-not-show-results-of-CanvasRenderingContext2D-putImageData-until-forced-re-render- branch from 897573f to fdd0bc1 Compare July 28, 2023 19:53
@webkit-commit-queue
Copy link
Collaborator

Committed 266397@main (fdd0bc1): https://commits.webkit.org/266397@main

Reviewed commits have been landed. Closing PR #16157 and removing active labels.

@webkit-commit-queue webkit-commit-queue merged commit fdd0bc1 into WebKit:main Jul 28, 2023
@webkit-commit-queue webkit-commit-queue removed the unsafe-merge-queue Applied to send a pull request to merge-queue, but skip building and testing label Jul 28, 2023
@grorg grorg deleted the eng/Canvas-does-not-show-results-of-CanvasRenderingContext2D-putImageData-until-forced-re-render- branch July 28, 2023 19:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Canvas Bugs related to the canvas element.
Projects
None yet
4 participants