summaryrefslogtreecommitdiff
path: root/Src/Modules/parameter.c
diff options
context:
space:
mode:
authorBart Schaefer <schaefer@zsh.org>2023-02-13 18:20:11 -0800
committerBart Schaefer <schaefer@zsh.org>2023-02-13 18:20:11 -0800
commit03887bb03fbca246fa94b5b5f2266572c0b6d038 (patch)
tree70ed74a1c4ef766d64dae4574f722f3bc87f6818 /Src/Modules/parameter.c
parentf4c706f0c84bddb7777d38635c4ba1d43703e2e5 (diff)
downloadzsh-03887bb03fbca246fa94b5b5f2266572c0b6d038.tar.gz
zsh-03887bb03fbca246fa94b5b5f2266572c0b6d038.zip
51430: Misc. problems with typeset and $parameters
* Fix and test for regression of assignment when using typeset command * Fix output of typeset +m and $parameters[ref] * Prevent segfault in typeset
Diffstat (limited to 'Src/Modules/parameter.c')
-rw-r--r--Src/Modules/parameter.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/Src/Modules/parameter.c b/Src/Modules/parameter.c
index a659300fd..96a211c69 100644
--- a/Src/Modules/parameter.c
+++ b/Src/Modules/parameter.c
@@ -108,7 +108,7 @@ getpmparameter(UNUSED(HashTable ht), const char *name)
if ((rpm = (Param) realparamtab->getnode2(realparamtab, name)) &&
!(rpm->node.flags & PM_UNSET)) {
pm->u.str = paramtypestr(rpm);
- if ((rpm->node.flags & PM_NAMEREF) &&
+ if ((rpm->node.flags & PM_NAMEREF) && rpm->u.str && *(rpm->u.str) &&
(rpm = (Param) realparamtab->getnode(realparamtab, name)) &&
!(rpm->node.flags & PM_UNSET)) {
pm->u.str = zhtricat(pm->u.str, "-", paramtypestr(rpm));