From 813024678d927b4d5fdeb6ba90734e3df3962d17 Mon Sep 17 00:00:00 2001 From: rlar Date: Sun, 11 Oct 2015 14:02:45 +0200 Subject: [PATCH] numparam/xpressn.c, cleanup `fetchnumentry()' --- src/frontend/numparam/xpressn.c | 26 ++++++-------------------- 1 file changed, 6 insertions(+), 20 deletions(-) diff --git a/src/frontend/numparam/xpressn.c b/src/frontend/numparam/xpressn.c index f1e6667cf..fdf442225 100644 --- a/src/frontend/numparam/xpressn.c +++ b/src/frontend/numparam/xpressn.c @@ -406,32 +406,18 @@ getidtype(dico_t *dico, char *s) static double -fetchnumentry(dico_t *dico, char *t, bool *perr) +fetchnumentry(dico_t *dico, char *s, bool *perr) { - bool err = *perr; - double u; - entry_t *entry; /* hash table entry */ - - entry = entrynb(dico, t); /* no keyword */ - /*dbg -- if (k <= 0) { printf("Dico num lookup fails."); } */ + entry_t *entry = entrynb(dico, s); while (entry && (entry->tp == 'P')) entry = entry->pointer; - if (entry) - if (entry->tp != 'R') - entry = NULL; + if (entry && (entry->tp == 'R')) + return entry->vl; - if (entry) { - u = entry->vl; - } else { - err = message(dico, "Undefined number [%s]\n", t); - u = 0.0; - } - - *perr = err; - - return u; + *perr = message(dico, "Undefined number [%s]\n", s); + return 0.0; }