From 8581a041a596cd81a4fe60882d264999466f868f Mon Sep 17 00:00:00 2001 From: Tingluo Huang Date: Wed, 18 Jan 2023 19:32:24 -0500 Subject: [PATCH] Revert "split by regex (#2333)" (#2383) This reverts commit 72830cfc122a12e80c1c5d73c9df60ba435851a9. --- src/Runner.Sdk/ProcessInvoker.cs | 5 +-- src/Test/L0/ProcessInvokerL0.cs | 68 -------------------------------- 2 files changed, 2 insertions(+), 71 deletions(-) diff --git a/src/Runner.Sdk/ProcessInvoker.cs b/src/Runner.Sdk/ProcessInvoker.cs index de9804639..e46b2a057 100644 --- a/src/Runner.Sdk/ProcessInvoker.cs +++ b/src/Runner.Sdk/ProcessInvoker.cs @@ -11,7 +11,6 @@ using System.Threading; using System.Threading.Channels; using System.Threading.Tasks; using GitHub.Runner.Sdk; -using System.Text.RegularExpressions; namespace GitHub.Runner.Sdk { @@ -266,8 +265,8 @@ namespace GitHub.Runner.Sdk foreach (KeyValuePair kvp in environment) { #if OS_WINDOWS - string tempKey = String.IsNullOrWhiteSpace(kvp.Key) ? kvp.Key : Regex.Split(kvp.Key, @"\p{C}")[0]; - string tempValue = String.IsNullOrWhiteSpace(kvp.Value) ? kvp.Value : Regex.Split(kvp.Value, @"\p{C}")[0]; + string tempKey = String.IsNullOrWhiteSpace(kvp.Key) ? kvp.Key : kvp.Key.Split('\0')[0]; + string tempValue = String.IsNullOrWhiteSpace(kvp.Value) ? kvp.Value : kvp.Value.Split('\0')[0]; if(!String.IsNullOrWhiteSpace(tempKey)) { _proc.StartInfo.Environment[tempKey] = tempValue; diff --git a/src/Test/L0/ProcessInvokerL0.cs b/src/Test/L0/ProcessInvokerL0.cs index cd958e2f9..6d99932e3 100644 --- a/src/Test/L0/ProcessInvokerL0.cs +++ b/src/Test/L0/ProcessInvokerL0.cs @@ -164,40 +164,6 @@ namespace GitHub.Runner.Common.Tests } } - [Fact] - [Trait("Level", "L0")] - [Trait("Category", "Common")] - public async Task SetTestEnvWithTabInKey() - { - using (TestHostContext hc = new(this)) - { - Tracing trace = hc.GetTrace(); - - Int32 exitCode = -1; - var processInvoker = new ProcessInvokerWrapper(); - processInvoker.Initialize(hc); - var stdout = new List(); - var stderr = new List(); - processInvoker.OutputDataReceived += (object sender, ProcessDataReceivedEventArgs e) => - { - trace.Info(e.Data); - stdout.Add(e.Data); - }; - processInvoker.ErrorDataReceived += (object sender, ProcessDataReceivedEventArgs e) => - { - trace.Info(e.Data); - stderr.Add(e.Data); - }; - - exitCode = await processInvoker.ExecuteAsync("", "cmd.exe", "/c \"echo %TEST%\"", new Dictionary() { { "TEST\u0009second", "first" } }, CancellationToken.None); - - trace.Info("Exit Code: {0}", exitCode); - Assert.Equal(0, exitCode); - Assert.Equal("first", stdout.First(x => !string.IsNullOrWhiteSpace(x))); - - } - } - [Fact] [Trait("Level", "L0")] [Trait("Category", "Common")] @@ -231,40 +197,6 @@ namespace GitHub.Runner.Common.Tests } } - - [Fact] - [Trait("Level", "L0")] - [Trait("Category", "Common")] - public async Task SetTestEnvWithTabInValue() - { - using (TestHostContext hc = new(this)) - { - Tracing trace = hc.GetTrace(); - - Int32 exitCode = -1; - var processInvoker = new ProcessInvokerWrapper(); - processInvoker.Initialize(hc); - var stdout = new List(); - var stderr = new List(); - processInvoker.OutputDataReceived += (object sender, ProcessDataReceivedEventArgs e) => - { - trace.Info(e.Data); - stdout.Add(e.Data); - }; - processInvoker.ErrorDataReceived += (object sender, ProcessDataReceivedEventArgs e) => - { - trace.Info(e.Data); - stderr.Add(e.Data); - }; - - exitCode = await processInvoker.ExecuteAsync("", "cmd.exe", "/c \"echo %TEST%\"", new Dictionary() { { "TEST", "first\u0009second" } }, CancellationToken.None); - - trace.Info("Exit Code: {0}", exitCode); - Assert.Equal(0, exitCode); - Assert.Equal("first", stdout.First(x => !string.IsNullOrWhiteSpace(x))); - - } - } #endif [Fact] [Trait("Level", "L0")]