Not 100% sure about this, maybe there is a reason it's done like that, but it looks like an oversight.
From: Fabian Maurer dark.shadow4@web.de
--- programs/cmd/wcmdmain.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/programs/cmd/wcmdmain.c b/programs/cmd/wcmdmain.c index 17702f4f277..46ec53587e7 100644 --- a/programs/cmd/wcmdmain.c +++ b/programs/cmd/wcmdmain.c @@ -3470,7 +3470,7 @@ static RETURN_CODE for_control_execute_fileset(CMD_FOR_CONTROL *for_ctrl, CMD_NO return errorlevel = ERROR_INVALID_FUNCTION; /* FOR loop aborts at first failure here */ } return_code = for_control_execute_from_FILE(for_ctrl, input, node); - fclose(input); + pclose(input); } else {