From 337b9dba1fe271eda69e3437c8632f33433bd1e3 Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Wed, 2 Nov 2005 12:04:46 +0000 Subject: 21974: memory leak with tied parameters --- Src/params.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'Src/params.c') diff --git a/Src/params.c b/Src/params.c index 835c12230..1468c014a 100644 --- a/Src/params.c +++ b/Src/params.c @@ -2452,8 +2452,13 @@ stdunsetfn(Param pm, UNUSED(int exp)) pm->u.str = NULL; break; } - if (!(pm->flags & PM_SPECIAL)) + if ((pm->flags & (PM_SPECIAL|PM_TIED)) == PM_TIED) { + if (pm->ename) { + zsfree(pm->ename); + pm->ename = NULL; + } pm->flags &= ~PM_TIED; + } pm->flags |= PM_UNSET; } -- cgit 1.4.1