Unix: command line --windowtype:foo fix
initoptions(), including initoptions_finish(), was running to completion with the default window system before windowtype from the command was parsed and activated. When the default window system is tty without MS-DOS the map type gets set to ascii; command line --windowtype:X11 doesn't switch it back to the X11 default of tiled. So, | NETHACKOPTIONS=windowtype:X11 nethack ran nethack in tiles mode but | nethack --windowtype:X11 ran it in text mode (assuming .nethackrc left tiles vs text with the default setting). I think this fix is quite iffy but it seems to work as intended.... It reclassifies '--windowtype' as an "early option" in unixmain.c, and the options.c code ultimately processes it twice.
This commit is contained in:
@@ -1087,6 +1087,7 @@ struct instance_globals {
|
||||
boolean opt_from_file;
|
||||
boolean opt_need_redraw; /* for doset() */
|
||||
boolean opt_need_glyph_reset;
|
||||
char *cmdline_windowsys; /* set in unixmain.c */
|
||||
/* use menucolors to show colors in the pick-a-color menu */
|
||||
boolean save_menucolors; /* copy of iflags.use_menu_colors */
|
||||
struct menucoloring *save_colorings; /* copy of g.menu_colorings */
|
||||
|
||||
Reference in New Issue
Block a user