From c4f33330f6797d0c199abf522f79c3ccac88ed55 Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Wed, 6 Aug 2008 19:51:04 +0000 Subject: 25409: fix eval's use of lastval --- Src/builtin.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'Src/builtin.c') diff --git a/Src/builtin.c b/Src/builtin.c index 99daf866b..e1378d901 100644 --- a/Src/builtin.c +++ b/Src/builtin.c @@ -4717,17 +4717,19 @@ bin_eval(UNUSED(char *nam), char **argv, UNUSED(Options ops), UNUSED(int func)) prog = parse_string(zjoin(argv, ' ', 1)); if (prog) { - lastval = 0; - - execode(prog, 1, 0); + if (wc_code(*prog->prog) != WC_LIST) { + /* No code to execute */ + lastval = 0; + } else { + execode(prog, 1, 0); - if (errflag) - lastval = errflag; + if (errflag) + lastval = errflag; + } } else { lastval = 1; } - errflag = 0; scriptname = oscriptname; ineval = oineval; -- cgit 1.4.1