+ emugtk_set_geometry_hints(mainwin);
+
+ /*
+ * If either a size or a position can be extracted from the geometry
+ * string, gtk_window_parse_geometry() returns TRUE and calls
+ * gtk_window_set_default_size() and/or gtk_window_move() to resize/move
+ * the window.
+ */
+ if (options.g != NULL) {
+ geometry_ok = gtk_window_parse_geometry(GTK_WINDOW(mainwin),
+ options.g);
+ if (!geometry_ok)
+ log_err("Failed to parse geometry argument: %s",
+ options.g);
+ }
+
+ /*
+ * If geometry was not specified, or was improperly parsed, use
+ * saved window size.
+ */
+ if (geometry_ok == false) {
+ log_err("Use saved window size");
+ gtk_window_set_default_size(GTK_WINDOW(mainwin),
+ cfg->win_width, cfg->win_height);
+ }
+