Bug 240807

Summary: [GPU Process] [Filters] Make PixelBuffer a RefCounted class
Product: WebKit Reporter: Said Abou-Hallawa <sabouhallawa>
Component: Layout and RenderingAssignee: Said Abou-Hallawa <sabouhallawa>
Status: RESOLVED FIXED    
Severity: Normal CC: bfulgham, simon.fraser, webkit-bug-importer, zalan
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 231253, 240269, 241328    

Description Said Abou-Hallawa 2022-05-23 09:01:54 PDT
The plan is to hide the underlying memory of PixelBuffer. GPUProcess needs to allocate shared memory and attribute it to the WebProcess.

Currently the PixelBuffer is created as std::optional<PixelBuffer> which does not allow sub-classing it. We need to create PixelBuffer as a pointer. In the software filter appliers code, there are instances that we need to ref-count the underlying memory 'Uint8ClampedArray' see FEGaussianBlurSoftwareApplier::ApplyParameters.
Comment 1 Radar WebKit Bug Importer 2022-05-27 10:09:18 PDT
<rdar://problem/94040771>
Comment 2 Said Abou-Hallawa 2022-05-27 10:16:37 PDT
Pull request: https://github.com/WebKit/WebKit/pull/1101
Comment 3 EWS 2022-06-01 18:08:08 PDT
Committed r295113 (251204@main): <https://commits.webkit.org/251204@main>

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