chiark / gitweb /
Actually do what the comment says at the top of main() regarding not
authorSimon Tatham <anakin@pobox.com>
Fri, 28 Dec 2012 11:22:13 +0000 (11:22 +0000)
committerSimon Tatham <anakin@pobox.com>
Fri, 28 Dec 2012 11:22:13 +0000 (11:22 +0000)
bombing out due to an option that we don't recognise but GTK will.
Somehow my basically workable plan had been completely nullified by
putting the error check in the wrong place.

[originally from svn r9733]

gtk.c

diff --git a/gtk.c b/gtk.c
index 714d679fed7d3bd2427f6b47ac510ea527b472a4..4222bd43ae871c8854a98071e1411edd07d28da8 100644 (file)
--- a/gtk.c
+++ b/gtk.c
@@ -2655,11 +2655,6 @@ int main(int argc, char **argv)
        }
     }
 
-    if (*errbuf) {
-       fputs(errbuf, stderr);
-       return 1;
-    }
-
     /*
      * Special standalone mode for generating puzzle IDs on the
      * command line. Useful for generating puzzles to be printed
@@ -2687,6 +2682,16 @@ int main(int argc, char **argv)
        char *id;
        document *doc = NULL;
 
+        /*
+         * If we're in this branch, we should display any pending
+         * error message from the command line, since GTK isn't going
+         * to take another crack at making sense of it.
+         */
+        if (*errbuf) {
+            fputs(errbuf, stderr);
+            return 1;
+        }
+
        n = ngenerate;
 
        me = midend_new(NULL, &thegame, NULL, NULL);