use script scope for copying args

Signed-off-by: Aaron Klotz <aaron@tailscale.com>
This commit is contained in:
Aaron Klotz
2025-08-11 12:25:48 -06:00
parent 1498c00e64
commit e673c55592

View File

@@ -4,12 +4,12 @@ $ErrorActionPreference = 'Stop'
<#
.DESCRIPTION
Copies the global $args variable into an array, which is easier to work with
Copies the script's $args variable into an array, which is easier to work with
when preparing to start child processes.
#>
function Copy-GlobalArgs {
$list = [System.Collections.Generic.List[string]]::new($Global:args.Count)
foreach ($arg in $Global:args) {
function Copy-ScriptArgs {
$list = [System.Collections.Generic.List[string]]::new($Script:args.Count)
foreach ($arg in $Script:args) {
$list.Add($arg)
}
return $list.ToArray()
@@ -189,7 +189,7 @@ $repoRoot = Get-RepoRoot
$execEnv = Copy-Environment
$execEnv.Remove('GOROOT')
$argList = Copy-GlobalArgs
$argList = Copy-ScriptArgs
if ($Env:TS_USE_GOCROSS -ne '1') {
$revFile = Join-Path $repoRoot 'go.toolchain.rev' -Resolve