From 82d3269b45db242e79edf6d2c9c34cb531c9f884 Mon Sep 17 00:00:00 2001 From: John Luo Date: Fri, 26 Feb 2016 16:51:53 -0800 Subject: [PATCH] Fixed how processes are killed on Linux --- .../Impl/ProcessWatcher.cs | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/Microsoft.DotNet.Watcher.Core/Impl/ProcessWatcher.cs b/src/Microsoft.DotNet.Watcher.Core/Impl/ProcessWatcher.cs index 91e7d72653..3fc42a5304 100644 --- a/src/Microsoft.DotNet.Watcher.Core/Impl/ProcessWatcher.cs +++ b/src/Microsoft.DotNet.Watcher.Core/Impl/ProcessWatcher.cs @@ -59,26 +59,34 @@ namespace Microsoft.DotNet.Watcher.Core return; } - ProcessStartInfo startInfo; - if (_isWindows) { - startInfo = new ProcessStartInfo() + var startInfo = new ProcessStartInfo() { FileName = "taskkill", Arguments = $"/T /F /PID {processId}", }; + var killProcess = Process.Start(startInfo); + killProcess.WaitForExit(); } else { - startInfo = new ProcessStartInfo() + var killSubProcessStartInfo = new ProcessStartInfo { FileName = "pkill", Arguments = $"-TERM -P {processId}", }; + var killSubProcess = Process.Start(killSubProcessStartInfo); + killSubProcess.WaitForExit(); + + var killProcessStartInfo = new ProcessStartInfo + { + FileName = "kill", + Arguments = $"-TERM {processId}", + }; + var killProcess = Process.Start(killProcessStartInfo); + killProcess.WaitForExit(); } - var killProcess = Process.Start(startInfo); - killProcess.WaitForExit(); } } } \ No newline at end of file