Use local mutexes (#10651)

* Update file config mutex code in KeyboardManager

* Update runner instance mutex names and logic

* Update Launcher mutex

* Update a mutex in the Runner

* Restored a mutex used in the installer

* Update src/modules/launcher/PowerLauncher/App.xaml.cs

Co-authored-by: Enrico Giordani <enricogior@users.noreply.github.com>
This commit is contained in:
Ivan Stošić
2021-04-08 19:42:46 +02:00
committed by GitHub
parent aa5ff65b54
commit c08be14919
10 changed files with 33 additions and 17 deletions

View File

@@ -29,8 +29,10 @@ namespace Microsoft.PowerToys.Settings.UI.Library.ViewModels
private const string EditShortcutActionName = "EditShortcut";
private const string EditShortcutActionValue = "Open Edit Shortcut Window";
private const string JsonFileType = ".json";
private const string ProfileFileMutexName = "PowerToys.KeyboardManager.ConfigMutex";
private const int ProfileFileMutexWaitTimeoutMilliseconds = 1000;
private static string ConfigFileMutexName => interop.Constants.KeyboardManagerConfigFileMutexName();
private const int ConfigFileMutexWaitTimeoutMilliseconds = 1000;
public KeyboardManagerSettings Settings { get; set; }
@@ -203,9 +205,9 @@ namespace Microsoft.PowerToys.Settings.UI.Library.ViewModels
try
{
using (var profileFileMutex = Mutex.OpenExisting(ProfileFileMutexName))
using (var profileFileMutex = Mutex.OpenExisting(ConfigFileMutexName))
{
if (profileFileMutex.WaitOne(ProfileFileMutexWaitTimeoutMilliseconds))
if (profileFileMutex.WaitOne(ConfigFileMutexWaitTimeoutMilliseconds))
{
// update the UI element here.
try