diff --git a/packages/playwright-core/src/server/registry/browserFetcher.ts b/packages/playwright-core/src/server/registry/browserFetcher.ts index 3eb021956c..918f2e74e9 100644 --- a/packages/playwright-core/src/server/registry/browserFetcher.ts +++ b/packages/playwright-core/src/server/registry/browserFetcher.ts @@ -170,6 +170,13 @@ async function downloadBrotli(title: string, browserDirectory: string, url: stri throw new Error(`Download failed: size mismatch, file size: ${downloadedBytes}, expected size: ${totalBytes} URL: ${url}`); debugLogger.log('install', `-- download complete, size: ${downloadedBytes}`); + + if (executablePath) { + debugLogger.log('install', `fixing permissions at ${executablePath}`); + await fs.promises.chmod(executablePath, 0o755); + } + await fs.promises.writeFile(browserDirectoryToMarkerFilePath(browserDirectory), ''); + return { error: null }; } catch (error) { debugLogger.log('install', `-- ${error.message}`);