53988: fix zparseopts segfault

This commit is contained in:
Joshua Krusell
2025-10-06 10:47:28 +02:00
committed by dana
parent 044267cecb
commit 8d21e54bdb
3 changed files with 28 additions and 0 deletions

View File

@@ -111,6 +111,25 @@
0:zparseopts -v
>ret: 0, optv: -a -b -c, argvv: 1 2 3, argv: -x -y -z 7 8 9
() {
local -a optv
zparseopts -a optv -v argvv - a
print -r - ret: $?, optv: $optv, argv: $argv
} -a
0:zparseopts -v with unset parameter
?(anon):zparseopts:2: no such array: argvv
>ret: 1, optv: , argv: -a
() {
local -a optv
local argvv=1
zparseopts -a optv -v argvv - a
print -r - ret: $?, optv: $optv, argv: $argv
} -a
0:zparseopts -v with non-array argument
?(anon):zparseopts:3: no such array: argvv
>ret: 1, optv: , argv: -a
() {
local -a optv aa ab
zparseopts -a optv - a=aa b:=ab c:- z