Kyle Sanderson
2deaa666f3
Fix erroneous () in DebugReport:: printouts. ( #517 )
2016-10-03 16:29:51 +01:00
Asher Baker
47dd2870d9
Merge pull request #476 from alliedmodders/query-format
...
Implement an auto-escaping Format native for SQL query construction
2016-10-03 16:20:01 +01:00
David Anderson
27e812461f
Update to the latest SourcePawn and AMTL.
2016-09-24 16:45:04 -07:00
Peace-Maker
ecbedb7b11
Don't expose CellArrays in ISourceMod to extensions
...
Don't let extensions have access to the internal implementation of cell
arrays.
2016-08-26 15:09:18 -07:00
Peace-Maker
5b9ae5917b
Add ICellArray and create/free in ISourceMod
...
Add an ICellArray interface to expose the adt_array CellArray class from
logic to core.
Add methods to ISourceMod to create and delete ICellArray instances in
logic.
2016-08-21 21:32:23 +02:00
David Anderson
61e958e679
Merge pull request #529 from peace-maker/optional_natives
...
Keep optional natives optional after reloading
2016-07-26 12:59:32 -07:00
David Anderson
3cccfc15da
Update to SourcePawn 1.9 and the latest AMTL.
2016-07-26 01:36:35 -07:00
Peace-Maker
2c8614c639
Keep optional natives optional after reloading
...
Bug 6518
Starting from no plugins loaded, after the final step of the following,
basetriggers will be marked as errored because mapchooser is missing:
Load basetriggers
Load mapchooser
Unload mapchooser
Load mapchooser
Unload mapchooser
We lose the SP_NTVFLAG_OPTIONAL when removing a WeakNative. The
__pl_mapchooser_SetNTVOptional() is only called in basetriggers when it
is loaded. It adds the OPTIONAL flag to the mapchooser natives the
basetrigger plugin uses.
When mapchooser is loaded, the native is overwritten and the OPTIONAL
flag consumed (WeakNative registered), but not preserved. Later when
mapchooser is unloaded the WeakNative is removed in
CNativeOwner::UnbindWeakRef, but the OPTIONAL flag isn't added again.
The next time mapchooser is loaded, the natives aren't optional anymore
and will cause a real dependency.
The change in ShareSys isn't needed to fix the error, but is included to
keep the SP_NTVFLAG_OPTIONAL flag consistent.
2016-07-21 01:52:47 +02:00
David Anderson
34dedcaab1
Remove half-up rounding.
2016-06-22 12:54:36 -07:00
Fyren
4d8e76202d
Merge pull request #518 from alliedmodders/UTIL_ReplaceAll-fix
...
Fix UTIL_ReplaceAll not properly tracking length (bug 6472)
2016-06-06 16:40:17 -06:00
Fyren
4e654704dc
Slightly better handling of plugin reloading.
2016-06-06 22:26:34 +00:00
Fyren
1790033458
Fix UTIL_ReplaceAll not properly tracking length.
2016-06-06 06:29:53 +00:00
Nicholas Hastings
11b4320204
Fix potential crash on plugin load when a required library is not found.
2016-04-27 10:49:39 -04:00
Nicholas Hastings
ed46ca3328
Add support for retrieving game server Steam Id (bug 6404). ( #495 )
2016-04-26 23:17:08 -04:00
David Anderson
f7bb423f06
Update to the latest SourcePawn and AMTL.
2016-03-13 16:29:11 -07:00
David Anderson
a7c7e72004
Merge pull request #485 from peace-maker/plugin_unloading
...
Fix scheduled plugin unloading
2016-02-29 10:53:26 -05:00
Peace-Maker
df59fd5b0e
Fix scheduled plugin unloading
...
When unloading a plugin no plugin is allowed to execute code. There's
been some flawed logic in the scheduling, leading it to bail out if the
plugin was marked for scheduled unloading..
Also change the "error" message of `sm plugins unload` to something
nice.
2016-02-29 16:40:24 +01:00
Peace-Maker
060f63e9db
Fix printing dependent extension name
...
Typo which will print the name of the extension being unloaded instead
of the one which would be unloaded as well because of it.
2016-02-27 21:22:09 +01:00
Asher Baker
700ec92a9a
Implement an auto-escaping Format native for SQL query construction
2016-02-15 15:05:16 +00:00
Asher Baker
272655f340
Changed AddString to be failable
2016-02-15 14:57:56 +00:00
Asher Baker
1ff13c59cf
Move the guts of Format to a helper function
2016-02-15 12:49:22 +00:00
Asher Baker
936bdc47f0
Add argument index to format error messages
2016-02-15 10:20:08 +00:00
Asher Baker
9008705b9d
Pass format flags down to AddString
2016-02-15 10:16:14 +00:00
Asher Baker
886c358e91
Renumber format flags for sanity
2016-02-15 10:09:48 +00:00
Peace-Maker
edb820eae8
Add info message when loading custom gamedata
...
Print a message to console when there is a gamedata file loaded from the
|custom| folder.
2016-01-03 22:28:24 +01:00
Fyren
0e80ffef55
Merge pull request #448 from alliedmodders/use-blamepluginerror
...
Update SP and use BlamePluginError in sdkhooks and sdktools.
2015-11-18 18:33:10 -07:00
Asher Baker
eb8996699e
Merge pull request #443 from alliedmodders/fix-ext-dep-load
...
Fix crash on failing to load dependent extension.
2015-11-18 14:12:27 +00:00
Fyren
fec2fa3bf0
Update SP and use BlamePluginError in sdkhooks.
2015-11-18 01:24:31 +00:00
Asher Baker
6ab0c35837
Pre-fill buffer for GetClientAuth*
2015-11-10 14:31:02 +00:00
Asher Baker
b81b6cd1c6
Fix crash on failing to load dependent extension.
2015-11-09 14:56:42 +00:00
David Anderson
c3e5d62bf6
Update to the latest AMTL: remove PassRef.
2015-11-08 13:51:22 -08:00
David Anderson
e2b399b8d3
Update to the latest AMTL - Rename Ref to RefPtr.
2015-11-08 13:14:57 -08:00
David Anderson
1f4be9798e
Flush asynchronous queries before OnPluginEnd().
2015-11-01 00:36:20 -07:00
David Anderson
c849616003
Add an OnPluginWillUnload callback that precedes OnPluginEnd().
2015-11-01 00:30:37 -07:00
David Anderson
d674414cf0
Add a versioned IPluginsListener and deprecate the non-versioned class.
2015-11-01 00:23:33 -07:00
David Anderson
cb3f6df111
Require that no plugin code be live when any plugin unloads.
2015-10-31 19:38:30 -07:00
David Anderson
59623695af
Improve plugin console diagnostics.
2015-10-31 17:30:33 -07:00
David Anderson
87e9dee78b
Evict plugins that fail to load.
2015-10-31 17:30:33 -07:00
David Anderson
62edc5f4c0
Clean up "sm plugins list" after status meaning clarifications.
2015-10-31 17:25:59 -07:00
David Anderson
485ade2610
Fix a number of inconsistencies in plugin state.
...
1. Fixed OnPluginUnloaded not pairing if the plugin failed.
2. Unify error message handling in the second pass.
3. Do not add libraries if a plugin failed during OnPluginStart.
2015-10-31 17:25:59 -07:00
David Anderson
9e4fff3362
Add a state variable to CPlugin to indicate queue/list membership.
2015-10-31 17:25:59 -07:00
David Anderson
7cc911ae58
Separate plugin unloading into an eviction step, which disconnects the plugin from Core.
...
Note: this also ensures that library action callbacks are balanced (i.e., we do not notify
libraries are being dropped if they were never notified as being added).
2015-10-31 17:25:59 -07:00
David Anderson
82ff7d5af7
Rename CPlugin::SetErrorState to EvictWithError.
2015-10-31 17:25:59 -07:00
David Anderson
c4c6efb140
Remove a crazy unused function from CPluginManager.
2015-10-31 17:25:59 -07:00
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