David Anderson
f078ea1f8a
Remove the Illiad-length mostly-wrong comment at the top of PluginSys.h
2015-10-31 17:25:59 -07:00
David Anderson
ab1b915a3c
Fix re-entrancy issues in CPluginManager by using ReentrantList.
2015-10-31 17:24:22 -07:00
David Anderson
709149fbed
Remove the CPluginIterator cache.
2015-10-31 17:23:24 -07:00
David Anderson
e57a076dc8
Remove CPluginManager's friend access to CPlugin.
2015-10-31 17:19:10 -07:00
David Anderson
c21b3a36fc
Remove CPluginManager direct use of CPlugin::NativeOwner::m_fakes.
2015-10-31 17:19:10 -07:00
David Anderson
f765c8d436
Remove CPluginManager direct use of CPlugin::m_LibraryMissing.
2015-10-31 17:19:10 -07:00
David Anderson
ae44a6540a
Remove CPluginManager direct use of CPlugin::m_FakeNativesMissing.
2015-10-31 17:19:10 -07:00
David Anderson
f27dbaf716
Remove CPluginManager direct use of CPlugin::m_RequiredLibs.
2015-10-31 17:19:10 -07:00
David Anderson
717ad38d06
Remove CPluginManager direct use of CPlugin::m_errormsg.
2015-10-31 17:19:10 -07:00
David Anderson
60f06d1414
Remove CPluginManager direct use of CPlugin::m_FileVersion.
2015-10-31 17:19:10 -07:00
David Anderson
a579136a3d
Remove CPluginManager direct use of CPlugin::m_DateTime.
2015-10-31 17:19:10 -07:00
David Anderson
2f3d523ac0
Remove CPluginManager use of CPlugin::m_pRuntime.
2015-10-31 17:19:10 -07:00
David Anderson
df5c53fa4a
Remove CPluginManager direct use of CPlugin::m_filename.
2015-10-31 17:19:10 -07:00
David Anderson
46c069dbbe
Remove CPluginManager direct use of CPlugin::m_Libraries.
2015-10-31 17:19:09 -07:00
David Anderson
bda9defc0f
Remove CPlugin's friend access to CPluginManager.
2015-10-31 17:19:09 -07:00
David Anderson
d0dda098a2
Merge pull request #429 from powerlord/sqltxn-dbresultset
...
Allow SQLTxnSuccess to use DBResultSet[] in addition to Handle[]
2015-10-22 23:40:28 -07:00
David Anderson
195a836999
Merge pull request #427 from alliedmodders/refactor-amb
...
Refactor and cleanup the AMBuildScript a bit.
2015-10-17 18:58:05 -07:00
David Anderson
6c5ab80418
Refactor and cleanup the AMBuildScript a bit.
2015-10-08 14:55:53 -07:00
David Anderson
88a47ff681
Switch to re-entrant lists in ForwardSys and CForward.
2015-09-21 01:07:34 -07:00
David Anderson
d0843ab997
Add a ReentrantList class to abstract list mutation during iteration.
2015-09-21 01:07:30 -07:00
David Anderson
c1396de2fc
Replace SourceHook::List with ke::LinkedList in ForwardSys.
2015-09-21 01:07:25 -07:00
David Anderson
0810c4b217
Fix style issues in ForwardSys, removing extra blocks and tightening variable scope.
...
This also fixes a bug where IsFunctionRegistered() did not check the paused plugins list.
2015-09-21 01:07:18 -07:00
David Anderson
632c7d05dd
Remove the forward cache and simplify CForward construction.
2015-09-21 01:07:01 -07:00
David Anderson
dcc192ee0d
Use new header style.
2015-09-21 01:06:43 -07:00
David Anderson
9b1678bd18
Remove error outparams from first-pass internal plugin loading commands.
2015-09-21 00:51:20 -07:00
David Anderson
5f19fc036d
Refactor AskPluginLoad() to contain its own error state.
2015-09-21 00:51:16 -07:00
David Anderson
5eec2e7d6d
Remove error message outparam to LoadExtensions.
2015-09-21 00:51:11 -07:00
David Anderson
3195dec436
Split LoadOrRequireExtensions into two distinct functions.
2015-09-20 23:44:45 -07:00
David Anderson
15f4a05122
Factor the iterator out of LoadOrRequireExtensions.
2015-09-20 23:44:41 -07:00
David Anderson
e559e6ffa8
Simplify pass 2 of LoadOrRequireExtensions.
2015-09-20 23:44:37 -07:00
David Anderson
23290b35a7
Clean up LoadOrRequireExtensions and properly scope variables.
2015-09-20 23:44:34 -07:00
David Anderson
2b3da56fb5
Dedent a huge block of code.
2015-09-20 23:44:30 -07:00
David Anderson
370710c0ff
Fix build.
2015-09-20 21:39:12 -07:00
David Anderson
4fc7eb8a6b
Remove trailing whitespace.
2015-09-20 20:58:03 -07:00
David Anderson
38c01714d7
Clean up AskPluginLoad logic.
2015-09-20 20:57:59 -07:00
David Anderson
0e1a34a4d7
Hide CPlugin timestamp management details.
2015-09-20 20:57:55 -07:00
David Anderson
d5d7e8c9cf
Factor guts of _LoadPlugin into a separate function.
2015-09-20 20:57:51 -07:00
David Anderson
76d681761d
Factor malware checks into its own pass.
2015-09-20 20:57:47 -07:00
David Anderson
3807edbeb8
Move CPlugin compilation into its own function.
2015-09-20 20:57:43 -07:00
David Anderson
d9216cc599
Remove references to non-mapupdated plugins.
2015-09-20 20:31:30 -07:00
David Anderson
d551338510
Merge pull request #400 from alliedmodders/mv-srvcmds-x
...
Remove sm_srvcmds.cpp.
2015-09-20 15:15:43 -07:00
David Anderson
8a7dfdbc11
Move the "sm" command to core/logic.
2015-09-20 14:33:17 -07:00
David Anderson
1a7b708df8
Split command buffer peeking hacks out of the "sm" command.
2015-09-20 14:33:14 -07:00
David Anderson
168b779786
Move sm_dump_handles to core/logic.
2015-09-20 14:33:10 -07:00
David Anderson
c853050265
Move sm_reload_translations to Translator.
2015-09-20 14:33:06 -07:00
David Anderson
c614d19af0
Move sm_dump_admcache to AdminCache.
2015-09-20 14:33:02 -07:00
David Anderson
8b4f27a038
Add infrastructure to let logic define ConCommands.
2015-09-20 14:32:58 -07:00
David Anderson
c66d14605a
Merge pull request #397 from alliedmodders/rm-old-mms
...
Remove code that handles long-dead Metamod:Source versions.
2015-09-18 14:38:52 -07:00
David Anderson
2a6b37dc81
Merge pull request #410 from alliedmodders/fix-static
...
Fix temporary parameter list being static.
2015-09-16 10:01:39 -07:00
David Anderson
485975fd99
Fix temporary parameter list being static.
2015-09-16 00:27:36 -07:00
David Anderson
c36f80b93d
Don't use server commands to flush plugin unloads.
2015-09-15 19:43:41 -07:00
David Anderson
08cadcdda6
Merge pull request #372 from alliedmodders/rm-pausing
...
Cleanup some PluginSys idiosyncracies.
2015-09-15 19:15:26 -07:00
David Anderson
d473b0441d
Allow plugin info fields to outlive their runtime.
2015-09-15 19:07:22 -07:00
David Anderson
653dd36020
Merge pull request #378 from powerlord/fix-convar
...
Fix ConVar .IntValue, .BoolValue, and .FloatValue assignments (Bug 6405)
2015-09-15 12:33:51 -07:00
David Anderson
2adae27557
Clean up CPlugin member variables.
2015-09-14 12:55:42 -07:00
David Anderson
3430962cbe
Simplify required libs handling and make sure they create dependency links.
2015-09-14 12:53:23 -07:00
David Anderson
0aaa659e29
Fix how the mark-serial is used.
...
The mark-serial is a generation number to optimize dependency tracking. It did not actually get
applied correctly, meaning that in rare cases we could miss dependencies. This patch removes the
incorrect serial propagation and ensures that we don't double-count a dependent plugin.
Additionally, this patch ensures that all callers of BindNativeToPlugin() will update the mark
serial, as is required to correctly track dependencies.
2015-09-14 12:50:50 -07:00
David Anderson
9ef8cc7064
Separate the top of UnloadPlugin into a precursor function.
2015-09-14 12:50:39 -07:00
David Anderson
fc947c68f7
Merge pull request #404 from alliedmodders/fix-crash
...
Fix a regression from the ConCmdManager refactoring that causes a crash using SourceMod commands in the server console.
2015-09-12 22:53:09 -07:00
David Anderson
bcd80d3e84
Fix a regression from the ConCmdManager refactoring that causes a crash using SourceMod commands in the server console.
2015-09-12 00:26:47 -07:00
David Anderson
fe16e8e47c
Move the SetCommandClient hook into GameHooks.
2015-09-09 20:03:23 -07:00
David Anderson
fd961f4712
Remove code to handle SourceHook versions 3 and lower.
2015-09-09 19:00:18 -07:00
David Anderson
b548ba7b58
Remove bad-console-read protection logic for Metamod:Source 1.7 and earlier.
2015-09-09 18:59:31 -07:00
David Anderson
df672dd8ce
Remove the ability to compile against Metamod:Source versions lower than 1.8.
2015-09-09 18:54:43 -07:00
David Anderson
c54b54ded0
Use GameHooks for ChatTriggers.
2015-09-09 18:51:21 -07:00
David Anderson
5757b729ac
Hide MRES_SUPERCEDE from command hook callbacks.
2015-09-09 18:45:20 -07:00
David Anderson
b048dc7b10
Move ConCommand hooks into GameHooks and switch callbacks to ICommandArgs.
2015-09-09 18:40:04 -07:00
David Anderson
b63bfdc72a
Rename QueryHookMode to ClientCvarQueryMode.
2015-09-09 18:40:01 -07:00
David Anderson
fa93426f6a
Remove blanket includes from sm_stringutil.
2015-09-09 15:18:24 -07:00
David Anderson
86f0a77e73
Reduce dependence on sm_strdup.
2015-09-09 15:18:24 -07:00
David Anderson
13a783d441
Remove UTIL_Format() and UTIL_FormatArgs().
2015-09-09 15:18:17 -07:00
David Anderson
e08697ad54
Remove strncopy().
2015-09-09 14:57:47 -07:00
David Anderson
67ba703b84
Merge pull request #392 from alliedmodders/mv-datapack
...
Move CDataPack from core to logic.
2015-09-09 14:41:49 -07:00
David Anderson
67c8ee4ce3
Move CDataPack from core to logic.
2015-09-06 11:02:52 -07:00
David Anderson
69984f472f
Remove unused, NPOTB CrazyDebugger.
2015-09-05 20:44:00 -07:00
David Anderson
4e275eea97
Split intercom.h into separate headers and reduce shared header inclusion.
2015-08-31 10:00:49 -07:00
David Anderson
4f1705e001
Rename some bridge interfaces.
2015-08-31 09:57:32 -07:00
David Anderson
5d55ff23bd
Move OnQueryCvarValueFinished into the global hook manager.
2015-08-31 09:22:08 -07:00
David Anderson
2ed044804d
Move OnConVarChanged into a global hook.
2015-08-31 09:18:29 -07:00
David Anderson
32ba03538b
Move CCommandArgs into its own header.
2015-08-31 00:07:37 -07:00
David Anderson
23feee0e00
Put the game provider in its own header.
2015-08-31 00:07:34 -07:00
David Anderson
401aa038f8
Start a new bridge mechanism for global callbacks.
2015-08-31 00:07:27 -07:00
David Anderson
38e1c2f1f3
Clean up the core side of the logic bridge.
2015-08-30 23:30:15 -07:00
David Anderson
9e4d396d5e
Virtualize MMS functions in the core/logic bridge.
2015-08-30 23:29:46 -07:00
David Anderson
5c5d43137d
Virtualize game state functions in the core/logic bridge.
2015-08-30 23:29:23 -07:00
David Anderson
bdfdab1d3a
Virtualize game description functions in the core/logic bridge.
2015-08-30 23:28:59 -07:00
David Anderson
9366882ac4
Virtualize ConVar bridge functions.
2015-08-30 23:28:44 -07:00
David Anderson
0f9e5234fe
Convert core_bridge to a proper class declaration.
2015-08-30 23:28:28 -07:00
David Anderson
3d5c9f0e21
Rename smcore to bridge, and use it as a pointer.
2015-08-30 23:27:53 -07:00
David Anderson
a2dac43833
Remove CCommand from the logic bridge.
2015-08-30 21:02:14 -07:00
David Anderson
28346c99f2
Move RootConsoleMenu into core/logic.
2015-08-30 21:01:46 -07:00
David Anderson
23d55dd9d5
Move RootConsoleMenu::ConsolePrint into the logic bridge.
2015-08-30 21:01:27 -07:00
David Anderson
2c886943a0
Move RootConsoleMenu into its own header and .cpp file.
2015-08-30 21:01:10 -07:00
David Anderson
9d805ea9fb
Replace the AddRootConsoleCommand API to not expose internal structures.
2015-08-30 21:01:03 -07:00
David Anderson
e992c33f35
Factor irrelevant stuff out of RootConsoleMenu.
2015-08-30 21:00:42 -07:00
David Anderson
ecbcc7ba16
Move the sourcemod_version convar.
2015-08-30 21:00:39 -07:00
David Anderson
6503e92d66
Move LibrarySys from core to logic.
2015-08-30 20:11:22 -07:00
David Anderson
207f643d3a
Replace g_LibSys usage with AMTL primitives.
2015-08-30 20:11:02 -07:00
David Anderson
ec01ca72a0
Replace internal ILibrary use with ke::SharedLib.
2015-08-30 20:10:59 -07:00
David Anderson
5ecd906905
Replace CLibrary with a wrapper around ke::SharedLib.
2015-08-30 20:10:57 -07:00