diff --git a/src/SDL.c b/src/SDL.c index 46d668820..2959db874 100644 --- a/src/SDL.c +++ b/src/SDL.c @@ -185,6 +185,7 @@ int SDL_InitSubSystem(Uint32 flags) SDL_InitLog(); SDL_InitProperties(); + SDL_GetGlobalProperties(); /* Clear the error message */ SDL_ClearError(); diff --git a/src/SDL_properties.c b/src/SDL_properties.c index 49ae6866c..31da31d32 100644 --- a/src/SDL_properties.c +++ b/src/SDL_properties.c @@ -82,14 +82,6 @@ int SDL_InitProperties(void) return -1; } } - - /* Create the global properties here to avoid race conditions later */ - if (!SDL_global_properties) { - SDL_global_properties = SDL_CreateProperties(); - if (!SDL_global_properties) { - return -1; - } - } return 0; } @@ -111,8 +103,8 @@ void SDL_QuitProperties(void) SDL_PropertiesID SDL_GetGlobalProperties(void) { - if (!SDL_properties && SDL_InitProperties() < 0) { - return 0; + if (!SDL_global_properties) { + SDL_global_properties = SDL_CreateProperties(); } return SDL_global_properties; }