Skip to content

Commit a4f43fa

Browse files
authored
Return whether the permissions fix was executed successfully (#2754)
1 parent 3315b38 commit a4f43fa

File tree

3 files changed

+21
-8
lines changed

3 files changed

+21
-8
lines changed

lib/PuppeteerSharp/BrowserData/InstalledBrowser.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,14 @@ internal InstalledBrowser(Cache cache, SupportedBrowser browser, string buildId,
3838
/// </summary>
3939
public Platform Platform { get; set; }
4040

41+
/// <summary>
42+
/// Whether the permissions have been fixed in the browser.
43+
/// If Puppeteer executed the command to fix the permissions, this will be true.
44+
/// If Puppeteer failed to fix the permissions, this will be false.
45+
/// If the platform does not require permissions to be fixed, this will be null.
46+
/// </summary>
47+
public bool? PermissionsFixed { get; internal set; }
48+
4149
/// <summary>
4250
/// Revision platform.
4351
/// </summary>

lib/PuppeteerSharp/BrowserFetcher.cs

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -250,7 +250,7 @@ private async Task<InstalledBrowser> DownloadAsync(SupportedBrowser browser, str
250250
if (new DirectoryInfo(outputPath).Exists)
251251
{
252252
var existingBrowser = new InstalledBrowser(cache, browser, buildId, Platform);
253-
RunSetup(existingBrowser);
253+
existingBrowser.PermissionsFixed = RunSetup(existingBrowser);
254254
return existingBrowser;
255255
}
256256

@@ -267,11 +267,11 @@ private async Task<InstalledBrowser> DownloadAsync(SupportedBrowser browser, str
267267
new FileInfo(archivePath).Delete();
268268

269269
var installedBrowser = new InstalledBrowser(cache, browser, buildId, Platform);
270-
RunSetup(installedBrowser);
270+
installedBrowser.PermissionsFixed = RunSetup(installedBrowser);
271271
return installedBrowser;
272272
}
273273

274-
private void RunSetup(InstalledBrowser installedBrowser)
274+
private bool? RunSetup(InstalledBrowser installedBrowser)
275275
{
276276
// On Windows for Chrome invoke setup.exe to configure sandboxes.
277277
if (
@@ -285,7 +285,7 @@ installedBrowser.Platform is Platform.Win32 or Platform.Win64 &&
285285

286286
if (!File.Exists(setupExePath))
287287
{
288-
return;
288+
return false;
289289
}
290290

291291
using var process = new Process();
@@ -295,12 +295,17 @@ installedBrowser.Platform is Platform.Win32 or Platform.Win64 &&
295295
process.StartInfo.UseShellExecute = false;
296296
process.Start();
297297
process.WaitForExit();
298+
299+
return true;
298300
}
299301
catch (Exception ex)
300302
{
301303
_logger?.LogError(ex, "Failed to run setup.exe");
304+
return false;
302305
}
303306
}
307+
308+
return null;
304309
}
305310

306311
private async Task InstallDmgAsync(string dmgPath, string folderPath)

lib/PuppeteerSharp/PuppeteerSharp.csproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@
1212
<Description>Headless Browser .NET API</Description>
1313
<PackageId>PuppeteerSharp</PackageId>
1414
<PackageReleaseNotes></PackageReleaseNotes>
15-
<PackageVersion>19.0.1</PackageVersion>
16-
<ReleaseVersion>19.0.1</ReleaseVersion>
17-
<AssemblyVersion>19.0.1</AssemblyVersion>
18-
<FileVersion>19.0.1</FileVersion>
15+
<PackageVersion>19.0.2</PackageVersion>
16+
<ReleaseVersion>19.0.2</ReleaseVersion>
17+
<AssemblyVersion>19.0.2</AssemblyVersion>
18+
<FileVersion>19.0.2</FileVersion>
1919
<SynchReleaseVersion>false</SynchReleaseVersion>
2020
<StyleCopTreatErrorsAsWarnings>false</StyleCopTreatErrorsAsWarnings>
2121
<DebugType>embedded</DebugType>

0 commit comments

Comments
 (0)