Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: d97d1afd0b8bd640d288c83dc501ee4e2e6c1421
https://github.com/WebKit/WebKit/commit/d97d1afd0b8bd640d288c83dc501ee4e2e6c1421
Author: Said Abou-Hallawa <[email protected]>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M
Source/WebCore/platform/graphics/filters/software/FilterEffectSoftwareParallelApplier.h
Log Message:
-----------
REGRESSION(305413.516@safari-7624-branch): The height of the FEMorphology
filter might be off by 1
https://bugs.webkit.org/show_bug.cgi?id=314268
rdar://175674532
Reviewed by Simon Fraser.
In
https://flagged.apple.com:443/proxy?t2=da8f6e4Ov1&o=aHR0cHM6Ly9jb21taXRzLndlYmtpdC5vcmcvMzA1NDEzLjUxNkBzYWZhcmktNzYyNC1icmFuY2g=&emid=c786313a-8e9b-40e1-8a9f-da5704c4b833&c=11,
ParallelJobs are
used to apply the FEMorphology filter. Applying the filter in parallel happens
in two steps:
1. Split the destination pixel buffer into `jobs`
horizontal
strips and then
dispatches them in parallel
2. When all the parallel jobs finish, the scratch outputs are stitched back via
a gather loop.
The first job is done directly into the destination PixelBuffer. So no stitching
is needed for job_0. Stitching the rest of the jobs (job_1 .. job_{n-1})
requires
moving the y-position in destination PixelBuffer by the height of the previous
job. And it requires also calculating the height of the current job. The problem
is the height of the current job is used to move y-position. This may prevent
stitching the last line in the last job to the destination PixelBuffer.
*
Source/WebCore/platform/graphics/filters/software/FilterEffectSoftwareParallelApplier.h:
(WebCore::applyPlatformParallel):
Originally-landed-as: 305413.865@safari-7624-branch (5d5fdc06de11).
rdar://180437652
Canonical link:
https://flagged.apple.com:443/proxy?t2=Dv8Q6Q0TR0&o=aHR0cHM6Ly9jb21taXRzLndlYmtpdC5vcmcvMzE2MjY3QG1haW4=&emid=c786313a-8e9b-40e1-8a9f-da5704c4b833&c=11
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications