rewrite of the native and dependency binding/interaction code. this will ease the transition for native overrides, and greatly simplifies most of the logic. all native binding code now takes place almost entirely in ShareSys, and PluginSys supplements this logic where appropriate. extensionsys has been cleaned up

--HG--
extra : convert_revision : svn%3A39bc706e-5318-0410-9160-8a85361fbb7c/trunk%402198
This commit is contained in:
David Anderson
2008-05-26 07:51:11 +00:00
parent c824afc61e
commit c93d05f622
14 changed files with 461 additions and 523 deletions
+6 -3
View File
@@ -190,7 +190,9 @@ bool SourceModBase::InitializeSourceMod(char *error, size_t maxlength, bool late
}
return false;
}
} else {
}
else
{
/* On version bumps, we should check for older versions as well, if the new version fails.
* We can then check the exports to see if any VM versions will be sufficient.
*/
@@ -240,10 +242,11 @@ bool SourceModBase::InitializeSourceMod(char *error, size_t maxlength, bool late
continue;
}
/* Refuse any API that we might not be able to deal with.
* Also refuse anything < 3 because we need fake natives.
* <s>Also refuse anything < 3 because we need fake natives.</s>
* Also refuse anything < 7 because we need the new sp_native definition.
*/
api_version = g_pVM->GetAPIVersion();
if (api_version < 3 || api_version > SOURCEPAWN_VM_API_VERSION)
if (api_version < 7 || api_version > SOURCEPAWN_VM_API_VERSION)
{
if (error && maxlength)
{