From 736f0c0c2d0b7ca0f185c4d88e614b5578820be1 Mon Sep 17 00:00:00 2001 From: EngincanV Date: Thu, 3 Oct 2024 16:47:41 +0300 Subject: [PATCH] CLI: CmdHelper should be working even the directory has 'space' characters. --- .../src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Utils/CmdHelper.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Utils/CmdHelper.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Utils/CmdHelper.cs index 8c5f40506d..5ccd9034cd 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Utils/CmdHelper.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Utils/CmdHelper.cs @@ -20,10 +20,14 @@ public class CmdHelper : ICmdHelper, ITransientDependency public void Open(string pathOrUrl) { + //directory might contain 'space' character + pathOrUrl = pathOrUrl.EnsureStartsWith('"'); + pathOrUrl = pathOrUrl.EnsureEndsWith('"'); + if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { pathOrUrl = pathOrUrl.Replace("&", "^&"); - Process.Start(new ProcessStartInfo("cmd", $"/c start {pathOrUrl}") { CreateNoWindow = true }); + Process.Start(new ProcessStartInfo("cmd", $"/c start \"\" {pathOrUrl}") { CreateNoWindow = true }); } else if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux)) {