Ensure that cores are deinitialised correctly following initialisation failure (#13665)

This commit is contained in:
jdgleaver 2022-02-24 13:49:33 +00:00 committed by GitHub
parent f0d9add1b2
commit b697f556e5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -5364,6 +5364,12 @@ bool retroarch_main_init(int argc, char *argv[])
else
input_remapping_restore_global_config(true);
#ifdef HAVE_DYNAMIC
/* Ensure that currently loaded core is properly
* deinitialised */
if (runloop_st->current_core_type != CORE_TYPE_DUMMY)
command_event(CMD_EVENT_CORE_DEINIT, NULL);
#endif
/* Attempt initializing dummy core */
runloop_st->current_core_type = CORE_TYPE_DUMMY;
if (!command_event(CMD_EVENT_CORE_INIT, &runloop_st->current_core_type))