diff --git a/include/winprocs.h b/include/winprocs.h index 014ee1e09..45463205e 100644 --- a/include/winprocs.h +++ b/include/winprocs.h @@ -11,7 +11,7 @@ #endif enum wp_ids { wp_tty = 1, wp_X11, wp_Qt, wp_mswin, wp_curses, - wp_chainin, wp_chainout, wp_safestartup, wp_shim, + wp_chainin, wp_chainout, wp_shim, wp_hup, wp_guistubs, wp_ttystubs, #if defined(AMIGA) wp_amii, wp_amiv, diff --git a/src/earlyarg.c b/src/earlyarg.c index 14a44f770..78feae94a 100755 --- a/src/earlyarg.c +++ b/src/earlyarg.c @@ -424,6 +424,12 @@ scores_only(int argc, char **argv, const char *dir) (void) whoami(); /* set up default plname[] */ #endif prscore(argc, argv); +#ifdef MSWIN_GRAPHICS + /* NetHackW can also support WINDOWPORT(curses) now, so check */ + if (WINDOWPORT(mswin)) { + wait_synch(); + } +#endif nh_terminate(EXIT_SUCCESS); /* bypass opt_terminate() */ /*NOTREACHED*/ diff --git a/src/options.c b/src/options.c index bada22768..c39100f94 100644 --- a/src/options.c +++ b/src/options.c @@ -7331,12 +7331,10 @@ initoptions_finish(void) * Option processing can take place before a user-decided WindowPort * is even initialized, so check for that too. */ - if (!WINDOWPORT(safestartup)) { - if (iflags.hilite_delta && !wc2_supported("statushilites")) { - raw_printf("Status highlighting not supported for %s interface.", - windowprocs.name); - iflags.hilite_delta = 0; - } + if (iflags.hilite_delta && !wc2_supported("statushilites")) { + raw_printf("Status highlighting not supported for %s interface.", + windowprocs.name); + iflags.hilite_delta = 0; } #endif update_rest_on_space(); diff --git a/src/windows.c b/src/windows.c index b8cc8ea8d..a36b0eaa4 100644 --- a/src/windows.c +++ b/src/windows.c @@ -333,7 +333,7 @@ choose_windows(const char *s) if (tmps) free((genericptr_t) tmps) /*, tmps = 0*/ ; - if (windowprocs.win_raw_print == def_raw_print || WINDOWPORT(safestartup)) + if (windowprocs.win_raw_print == def_raw_print) nh_terminate(EXIT_SUCCESS); } diff --git a/sys/windows/windmain.c b/sys/windows/windmain.c index e80d40cca..8da9ddec9 100644 --- a/sys/windows/windmain.c +++ b/sys/windows/windmain.c @@ -244,6 +244,7 @@ _CrtSetReportFile(_CRT_ASSERT, _CRTDBG_FILE_STDERR);*/ if (getcwd(orgdir, sizeof orgdir) == (char *) 0) error("NetHack: current directory path too long"); #endif + getreturn_enabled = TRUE; initoptions_init(); // This allows OPTIONS in syscf on Windows. set_default_prefix_locations( argv[0]); /* must be re-done after initoptions_init() @@ -251,10 +252,10 @@ _CrtSetReportFile(_CRT_ASSERT, _CRTDBG_FILE_STDERR);*/ // iflags.windowtype_deferred = TRUE; program_state.early_options = 1; + /* if (GUILaunched || IsDebuggerPresent()) */ early_options(&argc, &argv, &dir); program_state.early_options = 0; - /* if (GUILaunched || IsDebuggerPresent()) */ - getreturn_enabled = TRUE; + initoptions(); #if defined(CHDIR) && !defined(NOCWD_ASSUMPTIONS)