diff --git a/core/sourcemm_api.cpp b/core/sourcemm_api.cpp index 285b44b3..37debb78 100644 --- a/core/sourcemm_api.cpp +++ b/core/sourcemm_api.cpp @@ -78,11 +78,15 @@ bool SourceMod_Core::Load(PluginId id, ISmmAPI *ismm, char *error, size_t maxlen engine = (IVEngineServer *)ismm->GetEngineFactory()("VEngineServer022", nullptr); if (!engine) { - if (error && maxlen) + engine = (IVEngineServer *)ismm->GetEngineFactory()("VEngineServer021", nullptr); + if (!engine) { - ismm->Format(error, maxlen, "Could not find interface: VEngineServer023 or VEngineServer022"); + if (error && maxlen) + { + ismm->Format(error, maxlen, "Could not find interface: VEngineServer023 or VEngineServer022"); + } + return false; } - return false; } } #else diff --git a/public/smsdk_ext.cpp b/public/smsdk_ext.cpp index f88972b5..7a3cd2f8 100644 --- a/public/smsdk_ext.cpp +++ b/public/smsdk_ext.cpp @@ -348,11 +348,15 @@ bool SDKExtension::Load(PluginId id, ISmmAPI *ismm, char *error, size_t maxlen, engine = (IVEngineServer *) ismm->GetEngineFactory()("VEngineServer022", nullptr); if (!engine) { - if (error && maxlen) + engine = (IVEngineServer *) ismm->GetEngineFactory()("VEngineServer021", nullptr); + if (!engine) { - ismm->Format(error, maxlen, "Could not find interface: VEngineServer023 or VEngineServer022"); + if (error && maxlen) + { + ismm->Format(error, maxlen, "Could not find interface: VEngineServer023 or VEngineServer022"); + } + return false; } - return false; } } #else