From 84bf4de212a669a5ba7e3aeb423614758a7e5c0a Mon Sep 17 00:00:00 2001 From: Renaud Fivet Date: Fri, 24 Jul 2015 10:21:37 +0800 Subject: [PATCH] Review function name table search in eval.c:gtfun. --- eval.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eval.c b/eval.c index 4c36f5e..00b7a2b 100644 --- a/eval.c +++ b/eval.c @@ -324,10 +324,10 @@ static char *gtfun( char *fname) { fnum = ARRAY_SIZE( funcs) ; low = 0 ; high = fnum - 1 ; - while( low <= high) { + do { int s, cur ; - cur = (high - low + 1) / 2 + low ; + cur = (high + low) / 2 ; s = strcmp( fname, funcs[ cur].f_name) ; if( s == 0) { fnum = cur ; @@ -336,7 +336,7 @@ static char *gtfun( char *fname) { high = cur - 1 ; else low = cur + 1 ; - } + } while( low <= high) ; /* return errorm on a bad reference */ if (fnum == ARRAY_SIZE(funcs))