mirror of
https://github.com/actions/runner.git
synced 2025-12-12 15:13:30 +00:00
Don't escape percent
This commit is contained in:
@@ -16,11 +16,17 @@ namespace GitHub.Runner.Common
|
|||||||
new StringEscapingUtil.EscapeMapping(token: "%", replacement: "%25"),
|
new StringEscapingUtil.EscapeMapping(token: "%", replacement: "%25"),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
private static readonly StringEscapingUtil.EscapeMapping[] _commandDataEscapeMappings = new[]
|
||||||
|
{
|
||||||
|
new StringEscapingUtil.EscapeMapping(token: "\r", replacement: "%0D"),
|
||||||
|
new StringEscapingUtil.EscapeMapping(token: "\n", replacement: "%0A"),
|
||||||
|
};
|
||||||
|
|
||||||
private static readonly StringEscapingUtil.EscapeMapping[] _escapeDataMappings = new[]
|
private static readonly StringEscapingUtil.EscapeMapping[] _escapeDataMappings = new[]
|
||||||
{
|
{
|
||||||
new StringEscapingUtil.EscapeMapping(token: "\r", replacement: "%0D"),
|
new StringEscapingUtil.EscapeMapping(token: "\r", replacement: "%0D"),
|
||||||
new StringEscapingUtil.EscapeMapping(token: "\n", replacement: "%0A"),
|
new StringEscapingUtil.EscapeMapping(token: "\n", replacement: "%0A"),
|
||||||
new StringEscapingUtil.EscapeMapping(token: "%", replacement: "%25"),
|
// new StringEscapingUtil.EscapeMapping(token: "%", replacement: "%25"),
|
||||||
};
|
};
|
||||||
|
|
||||||
private static readonly StringEscapingUtil.EscapeMapping[] _escapePropertyMappings = new[]
|
private static readonly StringEscapingUtil.EscapeMapping[] _escapePropertyMappings = new[]
|
||||||
@@ -109,7 +115,7 @@ namespace GitHub.Runner.Common
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
command.Data = StringEscapingUtil.UnescapeString(message.Substring(endIndex + _commandKey.Length), _escapeDataMappings);
|
command.Data = StringEscapingUtil.UnescapeString(message.Substring(endIndex + _commandKey.Length), _commandDataEscapeMappings);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
catch
|
catch
|
||||||
|
|||||||
@@ -139,7 +139,7 @@ namespace GitHub.Runner.Common.Tests.Worker
|
|||||||
message = "::do-something k1=;=%252C=%250D=%250A=]=%253A,::;-%250D-%250A-]-:-,";
|
message = "::do-something k1=;=%252C=%250D=%250A=]=%253A,::;-%250D-%250A-]-:-,";
|
||||||
test = new ActionCommand("do-something")
|
test = new ActionCommand("do-something")
|
||||||
{
|
{
|
||||||
Data = ";-%0D-%0A-]-:-,",
|
Data = ";-%250D-%250A-]-:-,",
|
||||||
};
|
};
|
||||||
test.Properties.Add("k1", ";=%2C=%0D=%0A=]=%3A");
|
test.Properties.Add("k1", ";=%2C=%0D=%0A=]=%3A");
|
||||||
Assert.True(ActionCommand.TryParseV2(message, commands, out verify));
|
Assert.True(ActionCommand.TryParseV2(message, commands, out verify));
|
||||||
|
|||||||
@@ -454,7 +454,7 @@ namespace GitHub.Runner.Common.Tests.Worker
|
|||||||
_commandManager.TryProcessCommand(_ec.Object, $"::add-mask::%252F%2F", null);
|
_commandManager.TryProcessCommand(_ec.Object, $"::add-mask::%252F%2F", null);
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
Assert.Equal("***", hc.SecretMasker.MaskSecrets("%2F%2F"));
|
Assert.Equal("***", hc.SecretMasker.MaskSecrets("%252F%2F"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user