David Anderson
04827466b0
Rewrite the .smx parser.
...
This removes one the last remnants of the SourceMod 1.0 VM implementation.
The new parser introduces a number of design changes in the VM. First, the VM now takes greater responsibility for validating and sanity checking the structure of the SMX container format. Previously, malformed SMX files could easily crash SourcePawn. The loader now rejects files that have out-of-bounds offsets or incomplete sections. Complex sections, like debug info or the code stream, are verified lazily.
Internally, the sp_plugin_t structure has been removed. It has been replaced by a new LegacyImage class, designed to be independent from the SPVM API. This potentially lets us load code streams from non-.smx containers. More importantly, it removes a lot of bookkeeping and pre-computed state from PluginRuntime. The LegacyImage class is now responsible for handling debug info as well.
PluginRuntime is now intended to hold only cached or immutable data, and PluginContext holds all VM state. As such PluginContext is now responsible for allocating a plugin's runtime memory, not PluginRuntime.
Finally, some aspects of the loading process have been cleaned up. The
decompression and image handoff logic should now be easier to
understand.
2015-02-25 22:28:10 -08:00
David Anderson
fcaa5361c8
Don't expose mutable sp_native_t.
2015-02-24 23:10:18 -08:00
Asher Baker
6572989993
Merge pull request #213 from splewis/find-array-nonzero-blocks
...
Add block parameter to FindValueInArray native.
2015-02-24 22:37:49 +00:00
David Anderson
21f5400d9c
Remove ICompilationData.
2015-02-24 02:03:57 -08:00
Nicholas Hastings
b9579a53ce
Add missing impl for File.ReadUint16.
2015-02-18 04:50:20 -08:00
Nicholas Hastings
e88039d4e0
Fix FindFlagChar not finding char for AdminFlag_Custom6.
2015-02-03 10:32:34 -05:00
Nicholas Hastings
84a59c6fb7
Fix g_ReverseFlags array size.
2015-02-03 10:27:32 -05:00
Nicholas Hastings
19be28cc2e
Rename g_FlagSet to g_FlagCharSet to avoid some confusion.
2015-02-03 10:26:28 -05:00
Nicholas Hastings
52514a96bd
Fix "sm plugins refresh" not refreshing changed plugins.
2015-01-31 15:28:21 -05:00
Nicholas Hastings
8705aea634
Fix signed/unsigned compare warning in smn_adt_stack.
2015-01-27 17:59:55 -08:00
David Anderson
3040708d4e
Merge pull request #215 from Thordin/more_handles
...
Increased handles to 32k
2015-01-26 11:24:46 -08:00
David Anderson
2382902fe4
Merge pull request #244 from alliedmodders/db-fix
...
Fix wrong value in transitional DBI callback. (bug 6292)
2015-01-23 14:07:22 -08:00
Nicholas Hastings
9f648879e5
Fix regression causing "BOT" to no longer be valid in adminsys for Steam identities.
2015-01-17 10:11:04 -05:00
David Anderson
49383e7391
Fix wrong value in transitional DBI callback. (bug 6292)
2015-01-16 00:33:29 -08:00
Nicholas Hastings
3929ff1f27
Fix typo on ArrayList.Erase native.
2015-01-04 11:58:44 -05:00
Peace-Maker
9b2e77711a
Plugin_Failed == "An unrecoverable error"
...
Change the meaning of Plugin_Failed status to indicate, that the plugin
can't recover from the error.
Make sure those previously loaded plugins are shown correctly in sm
plugins info x.
2014-12-20 11:08:30 +01:00
Peace-Maker
0b131d6864
Pause dependent plugins on SetFailState (bug 6120)
...
When a plugin calls SetFailState it is paused and all natives it
registered are unavailable. Other plugins, which depend on those natives
keep running and error whenever they try to call those natives.
This correctly sets the dependent plugins to an error state as if the
plugin which called SetFailState was unloaded.
2014-12-20 11:07:57 +01:00
David Anderson
b1cb06c5ce
Update DBI for transitional syntax.
2014-12-13 16:34:58 -08:00
David Anderson
722a23c818
Redo menu methodmaps.
2014-12-13 12:53:30 -08:00
Thordin
f27c33cd18
Increased handles to 32k
2014-12-07 21:50:40 -08:00
Sean Lewis
d2e01da287
Wrap 3rd parameter in FindValueInArray to check for existence.
2014-12-06 17:07:54 -06:00
Sean Lewis
3ef2bdcb8d
Add block parameter to FindValueInArray native.
2014-12-06 03:21:53 -06:00
Asher Baker
50898d7a4f
Merge pull request #208 from asherkin/long-lang-codes
...
Support long key names for languages (bug 6282)
2014-11-24 19:07:18 +00:00
Asher Baker
ced026cecc
Support long key names for languages. (bug 6282)
2014-11-22 22:18:49 +00:00
David Anderson
be6da2f810
Merge pull request #173 from alliedmodders/tr-smc
...
Port SMC parsing API to transitional syntax.
2014-11-19 22:38:19 -08:00
David Anderson
0511543c76
Merge pull request #206 from alliedmodders/tr-files
...
Port files.inc to transitional syntax.
2014-11-18 18:56:07 -08:00
Nicholas Hastings
50400cf029
Remove unused variables.
2014-11-15 19:35:47 -05:00
David Anderson
79143d8b6e
Port files.inc to transitional syntax.
2014-11-15 13:42:28 -08:00
David Anderson
f25953bb6c
Merge pull request #187 from alliedmodders/tr-arrays
...
Update ArrayList for transitional syntax.
2014-11-15 13:04:29 -08:00
David Anderson
461dc3af3d
Merge pull request #189 from alliedmodders/tr-tries
...
Port string maps to transitional syntax.
2014-11-15 12:52:37 -08:00
David Anderson
4cb29eb054
Port adt_stack to transitional syntax.
2014-11-15 12:46:17 -08:00
David Anderson
8479c2f067
Port SMC parsing API to transitional syntax.
2014-11-09 12:33:07 -08:00
David Anderson
6ba4bcb955
Port string maps to transitional syntax.
2014-11-08 17:43:28 -08:00
David Anderson
919a31df57
Update ArrayList for transitional syntax.
2014-11-08 16:31:33 -08:00
David Anderson
f16501d34a
Simplify filesystem native implementation.
2014-11-08 15:44:35 -08:00
Nicholas Hastings
9021b23bc2
Fix crash on OpenDirectory with use_valve_fs if path not found.
...
Also fixes minor memory leak on bad path.
2014-10-28 13:57:40 -04:00
Nicholas Hastings
dca15ebabf
Fix OpenDirectory with use_valve_fs requirement of trailing slash.
2014-10-28 13:53:27 -04:00
Nicholas Hastings
512fae4c25
Fix crash on Windows when dumping admin cache to file.
2014-10-08 17:31:02 -07:00
Nicholas Hastings
0f6063af60
Re-add DBI query throttling (r=dvander).
2014-09-18 22:02:32 -04:00
Nicholas Hastings
c62e7458f9
Disable RTTI for Loader, Logic, and JIT bins
2014-09-11 17:15:59 -07:00
Nicholas Hastings
e6fd19fb8c
Fix crash regression from typo in 892edd9650
2014-09-09 22:05:59 -04:00
Nicholas Hastings
a597277a64
Merge pull request #153 from alliedmodders/auth-fixups
...
More auth fixups for Steam auth (bug 6243, r=asherkin).
2014-09-09 16:24:57 -04:00
Nicholas Hastings
b3dada65fa
Fix build.
2014-09-09 13:21:01 -07:00
Nicholas Hastings
ad7d920ce0
Move menu natives from core to logic
2014-09-05 08:24:40 -07:00
Nicholas Hastings
1bf4eb80bd
Cache Steam ID and rendered forms when caching networkID
2014-09-04 16:14:34 -07:00
Nicholas Hastings
f1dc24c089
Move Steam2/3 id rendering logic to CPlayer
2014-09-04 15:27:44 -07:00
Nicholas Hastings
892edd9650
Allow BindIdentity and FindAdminByIdentity to take more SteamID formats for steam auth type
2014-09-04 15:26:12 -07:00
David Anderson
a1dc1101f7
Fix build.
2014-09-03 22:33:05 -07:00
Nicholas Hastings
7f3656215b
Consistency Fixes (ID->Id, AuthString->AuthId)
2014-09-03 15:13:30 -07:00
Nicholas Hastings
3fba1d2817
Fix some nits
2014-09-03 10:50:11 -07:00