diff options
Diffstat (limited to 'client/go/internal/vespa/load_env.go')
-rw-r--r-- | client/go/internal/vespa/load_env.go | 56 |
1 files changed, 1 insertions, 55 deletions
diff --git a/client/go/internal/vespa/load_env.go b/client/go/internal/vespa/load_env.go index 6c41c1fece5..7fffb2494fe 100644 --- a/client/go/internal/vespa/load_env.go +++ b/client/go/internal/vespa/load_env.go @@ -180,7 +180,7 @@ func (p *shellEnvExporter) fallbackVar(varName, varVal string) { } func (p *shellEnvExporter) overrideVar(varName, varVal string) { delete(p.unsetVars, varName) - p.exportVars[varName] = shellQuote(varVal) + p.exportVars[varName] = util.ShellQuote(varVal) } func (p *shellEnvExporter) unsetVar(varName string) { delete(p.exportVars, varName) @@ -196,60 +196,6 @@ func (p *shellEnvExporter) currentValue(varName string) string { return os.Getenv(varName) } -func shellQuote(s string) string { - l := 0 - nq := false - for _, ch := range s { - switch { - case (ch >= 'A' && ch <= 'Z') || - (ch >= 'a' && ch <= 'z') || - (ch >= '0' && ch <= '9'): - l++ - case ch == '_' || ch == ' ': - l++ - nq = true - case ch == '\'' || ch == '\\': - l = l + 4 - nq = true - default: - l++ - nq = true - } - } - if nq { - l = l + 2 - } - res := make([]rune, l) - i := 0 - if nq { - res[i] = '\'' - i++ - } - for _, ch := range s { - if ch == '\'' || ch == '\\' { - res[i] = '\'' - i++ - res[i] = '\\' - i++ - res[i] = ch - i++ - res[i] = '\'' - } else { - res[i] = ch - } - i++ - } - if nq { - res[i] = '\'' - i++ - } - if i != l { - err := fmt.Errorf("expected length %d but was %d", l, i) - util.JustExitWith(err) - } - return string(res) -} - func (p *shellEnvExporter) dump() { for vn, vv := range p.exportVars { fmt.Printf("%s=%s\n", vn, vv) |