From c958ce87ca1fa1e841579eb98a00411b7ebc9e7e Mon Sep 17 00:00:00 2001 From: NepDisk Date: Tue, 3 Jun 2025 13:47:29 -0400 Subject: [PATCH] I_RegisterSysCommands so video cvars are registerd before menu init happens --- src/d_main.cpp | 2 ++ src/dummy/i_system.c | 2 ++ src/i_system.h | 2 ++ src/sdl/i_video.cpp | 21 ++++++++++++++------- 4 files changed, 20 insertions(+), 7 deletions(-) diff --git a/src/d_main.cpp b/src/d_main.cpp index 137d92c10..22089ab2e 100644 --- a/src/d_main.cpp +++ b/src/d_main.cpp @@ -1459,6 +1459,8 @@ void D_SRB2Main(void) CV_RegisterVar(&cv_constextsize); } + I_RegisterSysCommands(); + #ifdef HWRENDER // Lactozilla: Add every hardware mode CVAR and CCMD. // Has to be done before the configuration file loads, diff --git a/src/dummy/i_system.c b/src/dummy/i_system.c index 94e021dfd..5cd88243d 100644 --- a/src/dummy/i_system.c +++ b/src/dummy/i_system.c @@ -174,5 +174,7 @@ char *I_ClipboardPaste(void) return NULL; } +void I_RegisterSysCommands(void) {} + #include "../sdl/dosstr.c" diff --git a/src/i_system.h b/src/i_system.h index 59439faf5..3624fbb03 100644 --- a/src/i_system.h +++ b/src/i_system.h @@ -326,6 +326,8 @@ INT32 I_ClipboardCopy(const char *data, size_t size); */ const char *I_ClipboardPaste(void); +void I_RegisterSysCommands(void); + #ifdef __cplusplus } // extern "C" #endif diff --git a/src/sdl/i_video.cpp b/src/sdl/i_video.cpp index d25243eae..c05272bb3 100644 --- a/src/sdl/i_video.cpp +++ b/src/sdl/i_video.cpp @@ -1664,6 +1664,20 @@ static void Impl_InitVideoSubSystem(void) video_init = true; } +void I_RegisterSysCommands(void) +{ + if (dedicated || graphics_started) + return; + + COM_AddCommand ("vid_nummodes", VID_Command_NumModes_f); + COM_AddCommand ("vid_info", VID_Command_Info_f); + COM_AddCommand ("vid_modelist", VID_Command_ModeList_f); + COM_AddCommand ("vid_mode", VID_Command_Mode_f); + CV_RegisterVar (&cv_vidwait); + CV_RegisterVar (&cv_stretch); + CV_RegisterVar (&cv_alwaysgrabmouse); +} + void I_StartupGraphics(void) { if (dedicated) @@ -1674,13 +1688,6 @@ void I_StartupGraphics(void) if (graphics_started) return; - COM_AddCommand ("vid_nummodes", VID_Command_NumModes_f); - COM_AddCommand ("vid_info", VID_Command_Info_f); - COM_AddCommand ("vid_modelist", VID_Command_ModeList_f); - COM_AddCommand ("vid_mode", VID_Command_Mode_f); - CV_RegisterVar (&cv_vidwait); - CV_RegisterVar (&cv_stretch); - CV_RegisterVar (&cv_alwaysgrabmouse); disable_mouse = static_cast(M_CheckParm("-nomouse")); disable_fullscreen = M_CheckParm("-win") ? SDL_TRUE : SDL_FALSE;