Remove references to non-mapupdated plugins.
This commit is contained in:
parent
d551338510
commit
d9216cc599
@ -1003,7 +1003,7 @@ IPlugin *CPluginManager::LoadPlugin(const char *path, bool debug, PluginType typ
|
|||||||
LoadRes res;
|
LoadRes res;
|
||||||
|
|
||||||
*wasloaded = false;
|
*wasloaded = false;
|
||||||
if ((res=_LoadPlugin(&pl, path, true, type, error, maxlength)) == LoadRes_Failure)
|
if ((res=_LoadPlugin(&pl, path, true, PluginType_MapUpdated, error, maxlength)) == LoadRes_Failure)
|
||||||
{
|
{
|
||||||
delete pl;
|
delete pl;
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -2183,23 +2183,6 @@ void CPluginManager::OnRootConsoleCommand(const char *cmdname, const ICommandArg
|
|||||||
{
|
{
|
||||||
rootmenu->ConsolePrint(" Status: not running");
|
rootmenu->ConsolePrint(" Status: not running");
|
||||||
}
|
}
|
||||||
|
|
||||||
const char *typestr = "";
|
|
||||||
switch (pl->GetType())
|
|
||||||
{
|
|
||||||
case PluginType_MapUpdated:
|
|
||||||
typestr = "Map Change if Updated";
|
|
||||||
break;
|
|
||||||
case PluginType_MapOnly:
|
|
||||||
typestr = "Map Change";
|
|
||||||
break;
|
|
||||||
case PluginType_Private:
|
|
||||||
case PluginType_Global:
|
|
||||||
typestr = "Never";
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
rootmenu->ConsolePrint(" Reloads: %s", typestr);
|
|
||||||
}
|
}
|
||||||
if (pl->m_FileVersion >= 3)
|
if (pl->m_FileVersion >= 3)
|
||||||
{
|
{
|
||||||
@ -2362,26 +2345,14 @@ void CPluginManager::RefreshAll()
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
List<CPlugin *>::iterator iter;
|
|
||||||
List<CPlugin *> tmp_list = m_plugins;
|
List<CPlugin *> tmp_list = m_plugins;
|
||||||
CPlugin *pl;
|
for (auto iter = tmp_list.begin(); iter != tmp_list.end(); iter++)
|
||||||
time_t t;
|
|
||||||
|
|
||||||
for (iter=tmp_list.begin(); iter!=tmp_list.end(); iter++)
|
|
||||||
{
|
{
|
||||||
pl = (*iter);
|
CPlugin *pl = (*iter);
|
||||||
if (pl->GetType() == PluginType_MapOnly)
|
time_t t = pl->GetFileTimeStamp();
|
||||||
{
|
if (!t || t > pl->GetTimeStamp()) {
|
||||||
UnloadPlugin((IPlugin *)pl);
|
pl->SetTimeStamp(t);
|
||||||
}
|
UnloadPlugin(pl);
|
||||||
else if (pl->GetType() == PluginType_MapUpdated)
|
|
||||||
{
|
|
||||||
t = pl->GetFileTimeStamp();
|
|
||||||
if (!t || t > pl->GetTimeStamp())
|
|
||||||
{
|
|
||||||
pl->SetTimeStamp(t);
|
|
||||||
UnloadPlugin((IPlugin *)pl);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,33 +1,29 @@
|
|||||||
/**
|
// vim: set ts=4 sw=4 sw=4 tw=99 noet :
|
||||||
* vim: set ts=4 sw=4 :
|
// =============================================================================
|
||||||
* =============================================================================
|
// SourceMod
|
||||||
* SourceMod
|
// Copyright (C) 2004-2015 AlliedModders LLC. All rights reserved.
|
||||||
* Copyright (C) 2004-2009 AlliedModders LLC. All rights reserved.
|
// =============================================================================
|
||||||
* =============================================================================
|
//
|
||||||
*
|
// This program is free software; you can redistribute it and/or modify it under
|
||||||
* This program is free software; you can redistribute it and/or modify it under
|
// the terms of the GNU General Public License, version 3.0, as published by the
|
||||||
* the terms of the GNU General Public License, version 3.0, as published by the
|
// Free Software Foundation.
|
||||||
* Free Software Foundation.
|
//
|
||||||
*
|
// This program is distributed in the hope that it will be useful, but WITHOUT
|
||||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||||
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
// details.
|
||||||
* details.
|
//
|
||||||
*
|
// You should have received a copy of the GNU General Public License along with
|
||||||
* You should have received a copy of the GNU General Public License along with
|
// this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
* this program. If not, see <http://www.gnu.org/licenses/>.
|
//
|
||||||
*
|
// As a special exception, AlliedModders LLC gives you permission to link the
|
||||||
* As a special exception, AlliedModders LLC gives you permission to link the
|
// code of this program (as well as its derivative works) to "Half-Life 2," the
|
||||||
* code of this program (as well as its derivative works) to "Half-Life 2," the
|
// "Source Engine," the "SourcePawn JIT," and any Game MODs that run on software
|
||||||
* "Source Engine," the "SourcePawn JIT," and any Game MODs that run on software
|
// by the Valve Corporation. You must obey the GNU General Public License in
|
||||||
* by the Valve Corporation. You must obey the GNU General Public License in
|
// all respects for all other code used. Additionally, AlliedModders LLC grants
|
||||||
* all respects for all other code used. Additionally, AlliedModders LLC grants
|
// this exception to all derivative works. AlliedModders LLC defines further
|
||||||
* this exception to all derivative works. AlliedModders LLC defines further
|
// exceptions, found in LICENSE.txt (as of this writing, version JULY-31-2007),
|
||||||
* exceptions, found in LICENSE.txt (as of this writing, version JULY-31-2007),
|
// or <http://www.sourcemod.net/license.php>.
|
||||||
* or <http://www.sourcemod.net/license.php>.
|
|
||||||
*
|
|
||||||
* Version: $Id$
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef _INCLUDE_SOURCEMOD_PLUGINMNGR_INTERFACE_H_
|
#ifndef _INCLUDE_SOURCEMOD_PLUGINMNGR_INTERFACE_H_
|
||||||
#define _INCLUDE_SOURCEMOD_PLUGINMNGR_INTERFACE_H_
|
#define _INCLUDE_SOURCEMOD_PLUGINMNGR_INTERFACE_H_
|
||||||
@ -87,10 +83,10 @@ namespace SourceMod
|
|||||||
*/
|
*/
|
||||||
enum PluginType
|
enum PluginType
|
||||||
{
|
{
|
||||||
PluginType_Private, /**< Plugin is privately managed and receives no forwards */
|
PluginType_Private_Unused, /**< Unused. */
|
||||||
PluginType_MapUpdated, /**< Plugin will never be unloaded unless for updates on mapchange */
|
PluginType_MapUpdated, /**< Plugin will never be unloaded unless for updates on mapchange */
|
||||||
PluginType_MapOnly, /**< Plugin will be removed at mapchange */
|
PluginType_MapOnly_Unused, /**< Unused. */
|
||||||
PluginType_Global, /**< Plugin will never be unloaded or updated */
|
PluginType_Global_Unused, /**< Unused. */
|
||||||
};
|
};
|
||||||
|
|
||||||
class IPhraseCollection;
|
class IPhraseCollection;
|
||||||
@ -107,7 +103,7 @@ namespace SourceMod
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Returns the lifetime of a plugin.
|
* @brief Always returns PluginType_MapUpdated.
|
||||||
*/
|
*/
|
||||||
virtual PluginType GetType() =0;
|
virtual PluginType GetType() =0;
|
||||||
|
|
||||||
@ -146,6 +142,8 @@ namespace SourceMod
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Returns true if a plugin is in debug mode, false otherwise.
|
* @brief Returns true if a plugin is in debug mode, false otherwise.
|
||||||
|
*
|
||||||
|
* On SourceMod 1.1 or higher, this always returns true for loaded plugins.
|
||||||
*/
|
*/
|
||||||
virtual bool IsDebugging() =0;
|
virtual bool IsDebugging() =0;
|
||||||
|
|
||||||
@ -314,7 +312,7 @@ namespace SourceMod
|
|||||||
*
|
*
|
||||||
* @param path Path and filename of plugin, relative to plugins folder.
|
* @param path Path and filename of plugin, relative to plugins folder.
|
||||||
* @param debug Deprecated, must be false.
|
* @param debug Deprecated, must be false.
|
||||||
* @param type Lifetime of the plugin.
|
* @param type Plugin type. Values other than PluginType_MapUpdated are ignored.
|
||||||
* @param error Buffer to hold any error message.
|
* @param error Buffer to hold any error message.
|
||||||
* @param maxlength Maximum length of error message buffer.
|
* @param maxlength Maximum length of error message buffer.
|
||||||
* @param wasloaded Stores if the plugin is already loaded.
|
* @param wasloaded Stores if the plugin is already loaded.
|
||||||
|
Loading…
Reference in New Issue
Block a user