@@ -106,7 +106,7 @@ private static async Task<bool> HandleApplicationLaunch(string application, stri
 						Environment.GetEnvironmentVariable("PATH", EnvironmentVariableTarget.User));
 				}
 
-				process.StartInfo.WorkingDirectory = workingDirectory;
+				process.StartInfo.WorkingDirectory = workingDirectory ?? PathNormalization.GetParentDir(application);
 				process.Start();
 
 				Win32API.BringToForeground(currentWindows);
@@ -120,7 +120,7 @@ private static async Task<bool> HandleApplicationLaunch(string application, stri
 				process.StartInfo.FileName = application;
 				process.StartInfo.CreateNoWindow = true;
 				process.StartInfo.Arguments = arguments;
-				process.StartInfo.WorkingDirectory = workingDirectory;
+				process.StartInfo.WorkingDirectory = workingDirectory ?? PathNormalization.GetParentDir(application);
 
 				try
 				{