diff --git a/CHANGELOG.md b/CHANGELOG.md index 593916ce25..402c09445b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,7 @@ `:` elsewhere (#2406, #2408 by @solvingj). - Update the shell interpreter with a regression fix (#2812, #2832 by @andreynering). +- Fix potential panic with the shell interpreter (#2810 by @trulede). ## v3.50.0 - 2026-04-13 diff --git a/internal/execext/exec.go b/internal/execext/exec.go index 811e9442af..a418a2aa11 100644 --- a/internal/execext/exec.go +++ b/internal/execext/exec.go @@ -127,7 +127,10 @@ func ExpandFields(s string) ([]string, error) { s = escape(s) p := syntax.NewParser() var words []*syntax.Word - for w := range p.WordsSeq(strings.NewReader(s)) { + for w, err := range p.WordsSeq(strings.NewReader(s)) { + if err != nil { + return nil, err + } words = append(words, w) } cfg := &expand.Config{