From 1faab45815396c32a38f95f98be49e3ca25401a5 Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Sat, 25 Jul 2020 09:03:03 +0200 Subject: [PATCH] fairland: Make write_newcap_script() failure fatal When write_newcap_script() fails, it complains to stderr and fails. main() doesn't bother to check for failure. Has always been that way. Fix main() to check. Also adjust write_newcap_script() to return one on success, zero on failure, like the other functions do. Signed-off-by: Markus Armbruster --- src/util/fairland.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/util/fairland.c b/src/util/fairland.c index c48f1f5f8..74f1af144 100644 --- a/src/util/fairland.c +++ b/src/util/fairland.c @@ -320,7 +320,8 @@ main(int argc, char *argv[]) qprint("designating sectors...\n"); if (ORE) qprint("adding resources...\n"); - write_newcap_script(); + if (!write_newcap_script()) + exit(1); if (chdir(gamedir)) { fprintf(stderr, "Can't chdir to %s (%s)\n", gamedir, strerror(errno)); @@ -1279,7 +1280,7 @@ write_newcap_script(void) if (!script) { printf("fairland: error, unable to write to %s.\n", outfile); - return -1; + return 0; } for (c = 0; c < nc; ++c) { @@ -1290,7 +1291,7 @@ write_newcap_script(void) } fprintf(script, "add %d visitor visitor v\n", c + 1); fclose(script); - return 0; + return 1; } static void -- 2.43.0