Replace the AddRootConsoleCommand API to not expose internal structures.
This commit is contained in:
@@ -512,7 +512,7 @@ void CExtensionManager::OnSourceModAllInitialized()
|
||||
{
|
||||
g_ExtType = g_ShareSys.CreateIdentType("EXTENSION");
|
||||
pluginsys->AddPluginsListener(this);
|
||||
rootmenu->AddRootConsoleCommand("exts", "Manage extensions", this);
|
||||
rootmenu->AddRootConsoleCommand3("exts", "Manage extensions", this);
|
||||
g_ShareSys.AddInterface(NULL, this);
|
||||
}
|
||||
|
||||
@@ -929,12 +929,12 @@ void CExtensionManager::AddDependency(IExtension *pSource, const char *file, boo
|
||||
}
|
||||
}
|
||||
|
||||
void CExtensionManager::OnRootConsoleCommand(const char *cmdname, const CCommand &command)
|
||||
void CExtensionManager::OnRootConsoleCommand(const char *cmdname, const ICommandArgs *command)
|
||||
{
|
||||
int argcount = smcore.Argc(command);
|
||||
int argcount = command->ArgC();
|
||||
if (argcount >= 3)
|
||||
{
|
||||
const char *cmd = smcore.Arg(command, 2);
|
||||
const char *cmd = command->Arg(2);
|
||||
if (strcmp(cmd, "list") == 0)
|
||||
{
|
||||
List<CExtension *>::iterator iter;
|
||||
@@ -990,7 +990,7 @@ void CExtensionManager::OnRootConsoleCommand(const char *cmdname, const CCommand
|
||||
return;
|
||||
}
|
||||
|
||||
const char *filename = smcore.Arg(command, 3);
|
||||
const char *filename = command->Arg(3);
|
||||
char path[PLATFORM_MAX_PATH];
|
||||
char error[256];
|
||||
|
||||
@@ -1021,7 +1021,7 @@ void CExtensionManager::OnRootConsoleCommand(const char *cmdname, const CCommand
|
||||
return;
|
||||
}
|
||||
|
||||
const char *sId = smcore.Arg(command, 3);
|
||||
const char *sId = command->Arg(3);
|
||||
unsigned int id = atoi(sId);
|
||||
if (id <= 0)
|
||||
{
|
||||
@@ -1106,7 +1106,7 @@ void CExtensionManager::OnRootConsoleCommand(const char *cmdname, const CCommand
|
||||
return;
|
||||
}
|
||||
|
||||
const char *arg = smcore.Arg(command, 3);
|
||||
const char *arg = command->Arg(3);
|
||||
unsigned int num = atoi(arg);
|
||||
CExtension *pExt = FindByOrder(num);
|
||||
|
||||
@@ -1118,7 +1118,7 @@ void CExtensionManager::OnRootConsoleCommand(const char *cmdname, const CCommand
|
||||
|
||||
if (argcount > 4 && pExt->unload_code)
|
||||
{
|
||||
const char *unload = smcore.Arg(command, 4);
|
||||
const char *unload = command->Arg(4);
|
||||
if (pExt->unload_code == (unsigned)atoi(unload))
|
||||
{
|
||||
char filename[PLATFORM_MAX_PATH];
|
||||
@@ -1223,7 +1223,7 @@ void CExtensionManager::OnRootConsoleCommand(const char *cmdname, const CCommand
|
||||
return;
|
||||
}
|
||||
|
||||
const char *arg = smcore.Arg(command, 3);
|
||||
const char *arg = command->Arg(3);
|
||||
unsigned int num = atoi(arg);
|
||||
CExtension *pExt = FindByOrder(num);
|
||||
|
||||
|
||||
@@ -161,7 +161,7 @@ public: //IExtensionManager
|
||||
public: //IPluginsListener
|
||||
void OnPluginDestroyed(IPlugin *plugin);
|
||||
public: //IRootConsoleCommand
|
||||
void OnRootConsoleCommand(const char *cmdname, const CCommand &command);
|
||||
void OnRootConsoleCommand(const char *cmdname, const ICommandArgs *command) override;
|
||||
public:
|
||||
IExtension *LoadAutoExtension(const char *path, bool bErrorOnMissing=true);
|
||||
void BindDependency(IExtension *pOwner, IfaceInfo *pInfo);
|
||||
|
||||
@@ -900,8 +900,6 @@ LoadRes CPluginManager::_LoadPlugin(CPlugin **aResult, const char *path, bool de
|
||||
if (m_LoadingLocked)
|
||||
return LoadRes_NeverLoad;
|
||||
|
||||
int err;
|
||||
|
||||
/**
|
||||
* Does this plugin already exist?
|
||||
*/
|
||||
@@ -1819,7 +1817,7 @@ void CPluginManager::OnSourceModAllInitialized()
|
||||
g_PluginType = handlesys->CreateType("Plugin", this, 0, NULL, &sec, m_MyIdent, NULL);
|
||||
g_PluginIdent = g_ShareSys.CreateIdentType("PLUGIN");
|
||||
|
||||
rootmenu->AddRootConsoleCommand("plugins", "Manage Plugins", this);
|
||||
rootmenu->AddRootConsoleCommand3("plugins", "Manage Plugins", this);
|
||||
|
||||
g_ShareSys.AddInterface(NULL, GetOldAPI());
|
||||
|
||||
@@ -1941,12 +1939,12 @@ static inline bool IS_STR_FILLED(const char *text)
|
||||
return text[0] != '\0';
|
||||
}
|
||||
|
||||
void CPluginManager::OnRootConsoleCommand(const char *cmdname, const CCommand &command)
|
||||
void CPluginManager::OnRootConsoleCommand(const char *cmdname, const ICommandArgs *command)
|
||||
{
|
||||
int argcount = smcore.Argc(command);
|
||||
int argcount = command->ArgC();
|
||||
if (argcount >= 3)
|
||||
{
|
||||
const char *cmd = smcore.Arg(command, 2);
|
||||
const char *cmd = command->Arg(2);
|
||||
if (strcmp(cmd, "list") == 0)
|
||||
{
|
||||
char buffer[256];
|
||||
@@ -2035,7 +2033,7 @@ void CPluginManager::OnRootConsoleCommand(const char *cmdname, const CCommand &c
|
||||
|
||||
char error[128];
|
||||
bool wasloaded;
|
||||
const char *filename = smcore.Arg(command, 3);
|
||||
const char *filename = command->Arg(3);
|
||||
|
||||
char pluginfile[256];
|
||||
const char *ext = libsys->GetFileExtension(filename) ? "" : ".smx";
|
||||
@@ -2070,7 +2068,7 @@ void CPluginManager::OnRootConsoleCommand(const char *cmdname, const CCommand &c
|
||||
|
||||
CPlugin *pl;
|
||||
char *end;
|
||||
const char *arg = smcore.Arg(command, 3);
|
||||
const char *arg = command->Arg(3);
|
||||
int id = strtol(arg, &end, 10);
|
||||
|
||||
if (*end == '\0')
|
||||
@@ -2160,7 +2158,7 @@ void CPluginManager::OnRootConsoleCommand(const char *cmdname, const CCommand &c
|
||||
|
||||
CPlugin *pl;
|
||||
char *end;
|
||||
const char *arg = smcore.Arg(command, 3);
|
||||
const char *arg = command->Arg(3);
|
||||
int id = strtol(arg, &end, 10);
|
||||
|
||||
if (*end == '\0')
|
||||
@@ -2291,7 +2289,7 @@ void CPluginManager::OnRootConsoleCommand(const char *cmdname, const CCommand &c
|
||||
|
||||
CPlugin *pl;
|
||||
char *end;
|
||||
const char *arg = smcore.Arg(command, 3);
|
||||
const char *arg = command->Arg(3);
|
||||
int id = strtol(arg, &end, 10);
|
||||
|
||||
if (*end == '\0')
|
||||
|
||||
@@ -347,7 +347,7 @@ public: //IHandleTypeDispatch
|
||||
void OnHandleDestroy(HandleType_t type, void *object);
|
||||
bool GetHandleApproxSize(HandleType_t type, void *object, unsigned int *pSize);
|
||||
public: //IRootConsoleCommand
|
||||
void OnRootConsoleCommand(const char *cmdname, const CCommand &command);
|
||||
void OnRootConsoleCommand(const char *cmdname, const ICommandArgs *command) override;
|
||||
public:
|
||||
/**
|
||||
* Loads all plugins not yet loaded
|
||||
|
||||
@@ -40,7 +40,7 @@ ProfileToolManager::ProfileToolManager()
|
||||
void
|
||||
ProfileToolManager::OnSourceModAllInitialized()
|
||||
{
|
||||
rootmenu->AddRootConsoleCommand2("prof", "Profiling", this);
|
||||
rootmenu->AddRootConsoleCommand3("prof", "Profiling", this);
|
||||
}
|
||||
|
||||
void
|
||||
@@ -95,7 +95,7 @@ ProfileToolManager::StartFromConsole(IProfilingTool *tool)
|
||||
}
|
||||
|
||||
void
|
||||
ProfileToolManager::OnRootConsoleCommand2(const char *cmdname, const ICommandArgs *args)
|
||||
ProfileToolManager::OnRootConsoleCommand(const char *cmdname, const ICommandArgs *args)
|
||||
{
|
||||
if (tools_.length() == 0) {
|
||||
rootmenu->ConsolePrint("No profiling tools are enabled.");
|
||||
|
||||
@@ -48,7 +48,7 @@ public:
|
||||
void OnSourceModShutdown() override;
|
||||
|
||||
// IRootConsoleCommand
|
||||
void OnRootConsoleCommand2(const char *cmdname, const ICommandArgs *args) override;
|
||||
void OnRootConsoleCommand(const char *cmdname, const ICommandArgs *args) override;
|
||||
|
||||
void RegisterTool(IProfilingTool *tool) {
|
||||
tools_.append(tool);
|
||||
|
||||
@@ -52,7 +52,7 @@ using namespace SourceHook;
|
||||
* Add 1 to the RHS of this expression to bump the intercom file
|
||||
* This is to prevent mismatching core/logic binaries
|
||||
*/
|
||||
#define SM_LOGIC_MAGIC (0x0F47C0DE - 35)
|
||||
#define SM_LOGIC_MAGIC (0x0F47C0DE - 36)
|
||||
|
||||
#if defined SM_LOGIC
|
||||
class IVEngineServer
|
||||
|
||||
Reference in New Issue
Block a user