aboutsummaryrefslogtreecommitdiffstats
path: root/symbol.c
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2019-01-20 22:20:47 +0200
committerArnold D. Robbins <arnold@skeeve.com>2019-01-20 22:20:47 +0200
commit9a0812e1b5ed67c3e75e70749a7e2a54f9c2bfcc (patch)
treef7924aeb58a0b721e91f1127c92e18b3fbf3e54e /symbol.c
parenta6ece4a82072150e4b269b5698bb8caf14075bcb (diff)
parent5766636f7bb7eb6d8fa9fd1b097ca74329062173 (diff)
downloadegawk-9a0812e1b5ed67c3e75e70749a7e2a54f9c2bfcc.tar.gz
egawk-9a0812e1b5ed67c3e75e70749a7e2a54f9c2bfcc.tar.bz2
egawk-9a0812e1b5ed67c3e75e70749a7e2a54f9c2bfcc.zip
Merge branch 'master' into feature/fix-ns-memleak
Diffstat (limited to 'symbol.c')
-rw-r--r--symbol.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/symbol.c b/symbol.c
index fc598da5..94d66fe8 100644
--- a/symbol.c
+++ b/symbol.c
@@ -307,7 +307,6 @@ static NODE *
install(const char *name, NODE *parm, NODETYPE type)
{
NODE *r;
- NODE **aptr;
NODE *table;
NODE *n_name;
NODE *prev;
@@ -353,14 +352,12 @@ install(const char *name, NODE *parm, NODETYPE type)
goto simple;
r->dup_ent = prev->dup_ent;
prev->dup_ent = r;
+ unref(n_name);
} else {
simple:
/* the simple case */
- aptr = assoc_lookup(table, n_name);
- unref(*aptr);
- *aptr = r;
+ assoc_set(table, n_name, r);
}
- unref(n_name);
if (install_func)
(*install_func)(r);