| 1260 | } |
| 1261 | |
| 1262 | CPlugin *CPluginManager::CompileAndPrep(const char *path) |
| 1263 | { |
| 1264 | CPlugin *plugin = CPlugin::Create(path); |
| 1265 | if (plugin->GetStatus() != Plugin_Uncompiled) { |
| 1266 | assert(plugin->GetStatus() == Plugin_BadLoad); |
| 1267 | return plugin; |
| 1268 | } |
| 1269 | |
| 1270 | if (!plugin->TryCompile()) |
| 1271 | return plugin; |
| 1272 | assert(plugin->GetStatus() == Plugin_Created); |
| 1273 | |
| 1274 | if (!MalwareCheckPass(plugin)) |
| 1275 | return plugin; |
| 1276 | assert(plugin->GetStatus() == Plugin_Created); |
| 1277 | |
| 1278 | g_ShareSys.BindNativesToPlugin(plugin, true); |
| 1279 | plugin->InitIdentity(); |
| 1280 | return plugin; |
| 1281 | } |
| 1282 | |
| 1283 | |
| 1284 | bool CPluginManager::MalwareCheckPass(CPlugin *pPlugin) |
nothing calls this directly
no test coverage detected