Alexander Coffin alexcoffin1999@gmail.com writes:
@@ -1478,7 +1557,9 @@ void WCMD_execute (const WCHAR *command, const WCHAR *redirects, switch (i) {
case WCMD_CALL:
push_errorlevel_changed(); WCMD_call (p);
pop_errorlevel_changed();
This seems to be the only place that does this, so I don't see why you need to manage your own stack instead of saving/restoring things on the process stack.
Also returning a success/failure value from the various functions that implement commands would probably be cleaner than adding a global 'changed' flag.