dc1902
diff --git a/src/cmd/ksh93/sh/xec.c b/src/cmd/ksh93/sh/xec.c
dc1902
index 1ba7347..ab745d4 100644
dc1902
--- a/src/cmd/ksh93/sh/xec.c
dc1902
+++ b/src/cmd/ksh93/sh/xec.c
dc1902
@@ -640,7 +640,11 @@ int sh_eval(register Sfio_t *iop, int mode)
dc1902
 	if(lineno)
dc1902
 		shp->inlineno = lineno;
dc1902
 	if(io_save)
dc1902
+	{
dc1902
 		sfclose(io_save);
dc1902
+		io_save = 0;
dc1902
+	}
dc1902
+
dc1902
 	sh_freeup(shp);
dc1902
 	shp->st.staklist = saveslp;
dc1902
 	shp->fn_reset = 0;
dc1902
-- 
dc1902
2.9.3
dc1902