Skip to content

Commit 6f43ad7

Browse files
committed
feat(webkit): throw on webp screenshots on macOS
CG on macOS does not advertise a webp encoder UTI, so requesting webp would silently produce an empty buffer. Surface this clearly to users instead of letting it look like a successful no-op.
1 parent ab2c2ab commit 6f43ad7

1 file changed

Lines changed: 2 additions & 0 deletions

File tree

  • packages/playwright-core/src/server/webkit

packages/playwright-core/src/server/webkit/wkPage.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -868,6 +868,8 @@ export class WKPage implements PageDelegate {
868868
}
869869

870870
async takeScreenshot(progress: Progress, format: string, documentRect: types.Rect | undefined, viewportRect: types.Rect | undefined, quality: number | undefined, fitsViewport: boolean, scale: 'css' | 'device'): Promise<Buffer> {
871+
if (format === 'webp' && process.platform === 'darwin')
872+
throw new Error('webp screenshots are not supported in WebKit on macOS');
871873
const rect = (documentRect || viewportRect)!;
872874
const omitDeviceScaleFactor = scale === 'css';
873875
this.validateScreenshotDimension(rect.width, omitDeviceScaleFactor);

0 commit comments

Comments
 (0)