diff --git a/CHANGES b/CHANGES index 49f37a4a7..d04204fc7 100644 --- a/CHANGES +++ b/CHANGES @@ -3,6 +3,7 @@ Emulation fixes: - GBA Video: Revert scanline latching changes (fixes mgba.io/i/2153, mgba.io/i/2149) Other fixes: - Core: Fix memory leak in opening games from the library + - GB Core: Fix GBC colors setting breaking default model overrides (fixes mgba.io/i/2161) - Qt: Fix infrequent deadlock when using sync to video - Qt: Fix applying savetype-only overrides - Util: Fix loading UPS patches that affect the last byte of the file diff --git a/src/gb/core.c b/src/gb/core.c index 9f4f453fd..20997df6d 100644 --- a/src/gb/core.c +++ b/src/gb/core.c @@ -446,7 +446,8 @@ static void _GBCoreReset(struct mCore* core) { bool modelOverride = GBOverrideFind(gbcore->overrides, &override) || (doColorOverride && GBOverrideColorFind(&override)); if (modelOverride) { GBOverrideApply(gb, &override); - } else { + } + if (!modelOverride || override.model == GB_MODEL_AUTODETECT) { const char* modelGB = mCoreConfigGetValue(&core->config, "gb.model"); const char* modelSGB = mCoreConfigGetValue(&core->config, "sgb.model"); const char* modelCGB = mCoreConfigGetValue(&core->config, "cgb.model");