Commit Graph
100 Commits
Author SHA1 Message Date
David Anderson 435f2b8e39 Remove MenuManager use of memtables (bug 5899 part 2, r=fyren). 2013-08-31 11:50:28 -07:00
David Anderson a25f9010cc Remove CoreConfig use of memtables (bug 5899 part 1, r=fyren). 2013-08-31 11:50:11 -07:00
David Anderson 4500964394 Use Refcounted to manage to NativeEntry (bug 5852 part 4, r=ds).
--HG--
extra : rebase_source : 2e08816db6819c9d9957a0e0ade9cd1aa420fd54
2013-08-30 10:16:28 -07:00
David Anderson 3da646f913 Simplify NativeEntry state (bug 5852 part 3, r=ds).
--HG--
extra : rebase_source : e80ed1c3b3af0b48fff6632eb131ca534a2c2885
2013-08-30 10:14:18 -07:00
David Anderson 140436c2cb Store C++ native lists more optimally in ShareSys (bug 5852 part 2, r=ds).
--HG--
extra : rebase_source : 75b786b4c839ec48bf32982486fbbafa1050ad55
2013-08-30 10:12:44 -07:00
David Anderson 0e677fb3a2 Remove native override API (bug 5852 part 1, r=ds).
--HG--
extra : rebase_source : 9df0399c88721b63667a9b0b5dca0eb20168117a
2013-08-30 10:10:57 -07:00
David Anderson 4dc5d0e12f Fix -Wno order in AMBuildScript. 2013-08-30 12:50:47 -07:00
David Anderson a260e92266 Add a script to checkout/update linux dependencies. 2013-08-30 12:24:40 -07:00
David Anderson 9a86be24a7 Remove experimental decompiler from the tree; superceded by Lysis. 2013-08-30 11:39:47 -07:00
David Anderson da9debda67 Sync AMTL. 2013-08-29 11:45:28 -07:00
David Anderson f1b0c29815 Sync AMTL. 2013-08-29 10:11:59 -07:00
David Anderson b261dde858 Refactor Trie natives to use HashMap instead of KTrie; add iteration API (bug 5892, r=ds).
--HG--
extra : rebase_source : a5bcf64a45d6734a97d78b4f4ea9aea48d17bb8b
2013-08-29 10:09:02 -07:00
David Anderson c80e0a964f Fix uninitialized var causing trouble in _FindServerClass (bug 5893, irc r=psychonic). 2013-08-28 13:46:34 -04:00
David Anderson c30b7c111f Fix hashmap not being initialized (no bug, irc r=kyles). 2013-08-26 23:38:55 -07:00
David Anderson e6f39eb9b6 Switch AdminCache off KTrie (bug 5886, r=ds). 2013-08-25 21:39:07 -07:00
David Anderson 2c1a398292 Fix build. 2013-08-25 14:04:01 -07:00
David Anderson 0f52f6931b Switch ADTFactory/IBasicTrie off KTrie (bug 5884 part 17, r=ds). 2013-08-25 12:21:15 -07:00
David Anderson 51dc097266 Switch TopMenus off KTrie (bug 5884 part 16, r=ds). 2013-08-25 12:20:38 -07:00
David Anderson 8e99b342a4 Switch ClientPrefs off KTrie (bug 5884 part 15, r=ds). 2013-08-25 12:19:10 -07:00
David Anderson bc51c3e5b1 Switch ConCmdManager off KTrie (bug 5884 part 14, r=ds). 2013-08-25 12:18:25 -07:00
David Anderson d5177fdc74 Switch EventManager off KTrie (bug 5884 part 13, r=ds). 2013-08-25 12:17:26 -07:00
David Anderson 80eba57e6b Switch sm_srvcmds off KTrie (bug 5884 part 12, r=ds). 2013-08-25 12:17:25 -07:00
David Anderson 3985dd639a Switch UserMessages off KTrie (bug 5884 part 11, r=ds). 2013-08-25 12:16:07 -07:00
David Anderson 3000445af9 Switch smn_console off KTrie (bug 5884 part 10, r=ds). 2013-08-25 12:15:27 -07:00
David Anderson 0235d57625 Switch ConsoleDetours off KTrie (bug 5884 part 9, r=ds). 2013-08-25 12:15:26 -07:00
David Anderson 77c7b312ea Switch ConVar, CoreConfig off KTrie (bug 5884 part 8, r=ds). 2013-08-25 12:13:30 -07:00
David Anderson 3850765759 Switch HalfLife2 off KTrie (bug 5884 part 7, r=ds). 2013-08-25 11:59:48 -07:00
David Anderson 0b8e2fd5c9 Switch Profiler off KTrie (bug 5884 part 6, r=ds). 2013-08-25 11:59:48 -07:00
David Anderson ebe9ee8114 Switch ShareSys off KTrie (bug 5884 part 5, r=ds). 2013-08-25 11:59:47 -07:00
David Anderson a8ab617ee9 Switch smn_maplists off KTrie (bug 5884 part 4, r=ds). 2013-08-25 11:59:47 -07:00
David Anderson 414440589e Switch PluginSys off KTrie (bug 5884 part 3, r=ds). 2013-08-25 11:59:46 -07:00
David Anderson 544b6d94aa Switch HandleSys off KTrie (bug 5884 part 2, r=ds). 2013-08-25 11:59:45 -07:00
David Anderson 0144062126 Introduce NameHashSet (bug 5884 part 1, r=ds). 2013-08-25 11:59:44 -07:00
David Anderson db1b7a8067 Fix build. 2013-08-25 11:26:37 -07:00
David Anderson d14b5fe00b Switch GameConfigs to hash tables (bug 5878 part 3, r=ds). 2013-08-25 01:42:16 -07:00
David Anderson 04bb2d1066 Switch Translator to hash tables (bug 5878 part 2, r=ds). 2013-08-25 01:42:15 -07:00
David Anderson 3b9037397a Add new StringHashMap container (bug 5878 part 1, r=ds). 2013-08-25 01:42:14 -07:00
David Anderson 57e1c7d55f Fix build problems when using HashMap. 2013-08-24 01:29:43 -07:00
David Anderson e489b4a570 Fix build problems when using HashTable. 2013-08-24 01:29:26 -07:00
David Anderson 83dc7f0855 Fix performance problems in AString. 2013-08-24 01:29:03 -07:00
David Anderson 90a2d1bb39 Update AMTL with a number of changes.
- Introduce HashMap, a key-value map based on HashTable.
 - Introduce LinkedList, to port from SourceHook::List.
 - Introduce AString, to port from SourceHook::String.
 - Introduce KE_OVERRIDE and KE_DELETE helpers for C++11.
 - HashTable now constructs/destructs only live items.
 - Fix insert-on-removed-item bug in HashTable.
 - Fix Vector keeping a new maxsize if allocation fails.
 - Renamed am-inline-list.h to am-inlinelist.h.

--HG--
rename : public/amtl/am-inline-list.h => public/amtl/am-inlinelist.h
2013-08-23 22:29:44 -07:00
David Anderson 5999b50e10 Fix Windows build errors. 2013-08-23 15:45:07 -07:00
David Anderson 4d43374fde Add atomic reference counting and port DBI (bug 5876 part 3, r=ds).
--HG--
extra : rebase_source : a6defaf477e7a856ce91f92d5f3143f12c141da3
2013-08-23 00:18:13 -07:00
David Anderson dac42ee272 Add reference counting to IDatabase (bug 5876 part 2, r=ds).
--HG--
extra : rebase_source : 9fef982c3923a2f5cb842b3b8a5cca235ef9c6b9
2013-08-23 00:18:12 -07:00
David Anderson f7991185ba Add reference counting and use it for CGameConfig (bug 5876 part 1, r=ds).
--HG--
extra : rebase_source : 42b033d005ae3118b6505c530227c84e0e8a7553
2013-08-23 00:18:11 -07:00
David Anderson dab2932550 Fix Linux build. 2013-08-22 18:03:00 -07:00
David Anderson a8cebbe3fd Fix windows build. 2013-08-22 17:55:49 -07:00
David Anderson d6a6194e68 Make amtl headers BSD-licensed and clean up outstanding style issues. 2013-08-22 17:11:17 -07:00
David Anderson c373527851 Rename ke_* headers to am-*
--HG--
rename : public/amtl/ke_allocator_policies.h => public/amtl/am-allocator-policies.h
rename : public/amtl/ke_inline_list.h => public/amtl/am-inline-list.h
rename : public/amtl/ke_thread_posix.h => public/amtl/am-thread-posix.h
rename : public/amtl/ke_thread_utils.h => public/amtl/am-thread-utils.h
rename : public/amtl/ke_thread_windows.h => public/amtl/am-thread-windows.h
rename : public/amtl/ke_utility.h => public/amtl/am-utility.h
rename : public/amtl/ke_vector.h => public/amtl/am-vector.h
2013-08-22 17:10:59 -07:00
David Anderson de8726ab73 Move ke_ headers to new public/amtl folder.
--HG--
rename : public/sourcepawn/ke_allocator_policies.h => public/amtl/ke_allocator_policies.h
rename : public/sourcepawn/ke_inline_list.h => public/amtl/ke_inline_list.h
rename : public/sourcepawn/ke_thread_posix.h => public/amtl/ke_thread_posix.h
rename : public/sourcepawn/ke_thread_utils.h => public/amtl/ke_thread_utils.h
rename : public/sourcepawn/ke_thread_windows.h => public/amtl/ke_thread_windows.h
rename : public/sourcepawn/ke_utility.h => public/amtl/ke_utility.h
rename : public/sourcepawn/ke_vector.h => public/amtl/ke_vector.h
2013-08-22 16:30:44 -07:00
David Anderson 94d33a4ef1 Fix various problems with unloading ClientPrefs and SourceMod (bug 5874, r=ds).
--HG--
extra : rebase_source : 0a35f8380d651ca65fac9dd402c5cd3625e3105c
2013-08-22 14:05:44 -07:00
David Anderson 754a6e1177 Rewrite DBManager to use the new synchronization primitives (bug 5870, r=fyren). 2013-08-21 00:01:28 -07:00
David Anderson b972ea4781 Fix stack alignment when lazily compiling scripted calls (bug 5871, r=ds). 2013-08-20 23:59:11 -07:00
David Anderson 45856816c1 Rewrite IThreader implementation around new synchronization primitives (bug 5862, r=fyren). 2013-08-19 20:58:02 -07:00
David Anderson c48cc0afdc Fix OS X build. 2013-08-15 16:26:16 -07:00
David Anderson caa3343dea Added missing core.cfg entry. 2013-08-14 23:59:31 -07:00
David Anderson 3ac43497b9 Implement a watchdog timer for scripts that take too long to execute (bug 5837, r=fyren).
--HG--
extra : rebase_source : ffacb38457eca581660ce8f15c444ad828b7fedd
2013-08-14 23:54:25 -07:00
David Anderson a4b7ad0d42 Fixed memory corruption when parsing natives. (bug 5840, r=fyren) 2013-08-12 01:33:04 +01:00
David Anderson b39fcebe65 Remove InfoVars, reassign DAT from EBP to ESI to preserve C++ stacktraces in JIT code (bug 5844 part 10, r=ds). 2013-08-12 00:24:02 +01:00
David Anderson 04129a0841 Remove InfoVars::frm (bug 5844 part 9, r=ds). 2013-08-12 00:23:54 +01:00
David Anderson a7658f013e Eliminate InfoVars::hp (bug 5844 part 8, r=ds). 2013-08-12 00:23:00 +01:00
David Anderson 2822bf7a65 Eliminate InfoVars::cip (bug 5844 part 7, r=ds). 2013-08-12 00:22:54 +01:00
David Anderson 87ccd272ee Eliminate InfoVars::rval (bug 5844 part 6, r=ds). 2013-08-12 00:22:41 +01:00
David Anderson 18275ce2c9 Remove InfoVars::ctx (bug 5844 part 5, r=fyren). 2013-08-11 11:33:47 -07:00
David Anderson 5935070dfa Remove InfoVars::memory (bug 5844 part 4, r=ds). 2013-08-11 11:33:29 -07:00
David Anderson 8391c83121 Remove InfoVars::stp (bug 5844 part 3, r=fyren). 2013-08-11 11:31:55 -07:00
David Anderson 4255ee105f Remove InfoVars::data_size (bug 5844 part 2, r=ds). 2013-08-11 11:31:24 -07:00
David Anderson e3c45bd1f7 Clean up INFO register structure (bug 5844 part 1, r=ds). 2013-08-11 11:30:27 -07:00
David Anderson 449617474b Statically align the stack at function boundaries (bug 5842, r=ds). 2013-08-11 11:27:19 -07:00
David Anderson ce542ac5f6 Move tracker related opcodes entirely to C++.
The tracker related opcodes:
  GENARRAY
  GENARRAY_Z
  TRACKER_POP_SETHEAP
  TRACKER_PUSH_C

All contain some vastly overcomplicated assembly containing logic that could
be implemented much easier in C++. If it were a performance concern, these
opcodes would be entirely in C++, but most of them call out to one or more
routines to do additional work. This patch just moves most of the logic out
to C++ to reduce complexity and fix reported bugs.

--HG--
extra : rebase_source : 1397056ac3ca3efb969e66ec577e2b33ca725e1a
2013-08-10 21:23:02 -07:00
David Anderson 70952282f0 More Windows build fix. 2013-08-08 22:02:42 -07:00
David Anderson f031ad23f6 Fix Windows build (require stdint.h i.e. MSVC 2010+). 2013-08-08 20:21:37 -07:00
David Anderson 6cb67a19e7 Checkin missing chunks from bug 5680 (ref bug 5691). 2013-03-31 22:03:57 -07:00
David Anderson 9b5ca124ab Don't allocate/delete across static CRTs (no bug, irc r=fyren+psychonic). 2013-03-31 13:30:22 -07:00
David Anderson 4a0a509dd8 Fix typo in ExtensionSys::LoadAutoExtension (no bug, r=me). 2013-03-31 09:50:46 -07:00
David Anderson 6f2184901d Fix Mac build. 2013-03-29 13:10:51 -07:00
David Anderson 201e5e59da Fix build, again.
--HG--
extra : rebase_source : 8b1fb4f11f51c6b3bc63eb2e3e20467619d93a9a
2013-03-29 13:06:12 -07:00
David Anderson 4191856034 Fix protobuf builds. 2013-03-29 12:35:56 -07:00
David Anderson 97f7b4f59f Fix build. 2013-03-29 12:19:41 -07:00
David Anderson ea441b3d70 Fix build. 2013-03-29 11:47:40 -07:00
David Anderson 045ee262a8 Move scared guts of core into logic (bug 5680, r=fyren).
--HG--
rename : core/ExtensionSys.cpp => core/logic/ExtensionSys.cpp
rename : core/ExtensionSys.h => core/logic/ExtensionSys.h
rename : core/HandleSys.cpp => core/logic/HandleSys.cpp
rename : core/HandleSys.h => core/logic/HandleSys.h
rename : core/NativeInvoker.cpp => core/logic/NativeInvoker.cpp
rename : core/NativeInvoker.h => core/logic/NativeInvoker.h
rename : core/NativeOwner.cpp => core/logic/NativeOwner.cpp
rename : core/NativeOwner.h => core/logic/NativeOwner.h
rename : core/PluginSys.cpp => core/logic/PluginSys.cpp
rename : core/PluginSys.h => core/logic/PluginSys.h
rename : core/ShareSys.cpp => core/logic/ShareSys.cpp
rename : core/ShareSys.h => core/logic/ShareSys.h
rename : core/smn_fakenatives.cpp => core/logic/smn_fakenatives.cpp
rename : core/logic/AutoHandleRooter.h => public/AutoHandleRooter.h
2013-03-29 11:37:29 -07:00
David Anderson f5e1ff3f1f Fix more build bustage. 2013-02-16 17:28:17 -08:00
David Anderson 3fda82b5f8 Fix build bustage. 2013-02-16 17:01:53 -08:00
David Anderson 822a4896da Fix build bustage. 2013-02-16 16:50:47 -08:00
David Anderson 7f2bf03d7e Trigger an build. 2013-02-16 16:45:54 -08:00
David Anderson 1e8a6e878d Move DebugReporter from core to logic (bug 5607, r=psychonic).
--HG--
rename : core/DebugReporter.cpp => core/logic/DebugReporter.cpp
rename : core/DebugReporter.h => core/logic/DebugReporter.h
2013-02-16 15:57:00 -08:00
David Anderson 5f0a55057e Move filesystem natives from Core to Logic (bug 5606, r=psychonic).
--HG--
rename : core/smn_filesystem.cpp => core/logic/smn_filesystem.cpp
2013-02-16 15:52:11 -08:00
David Anderson 7814acb9f8 Remove plugin_settings.cfg and supporting code (bug 5605, r=psychonic).
--HG--
extra : rebase_source : 66d0ba0ddb5c649e7f72d96bdf3629e563522ae9
2013-02-16 15:15:22 -08:00
David Anderson 666703e8cf Trigger build. 2013-02-10 21:43:07 -08:00
David Anderson 52cd52ca54 Bump version to 1.6.0. 2013-02-10 21:10:25 -08:00
David Anderson 5aacf886e1 Call OnPluginEnd before finalizer hooks have run (bug 4519, r=fyren). 2012-12-14 15:05:18 -05:00
David Anderson b52f696d49 Push build. 2012-08-04 13:53:51 -07:00
David Anderson 983e37a0be Upgrade the Windows python version for debugging. 2012-08-04 13:26:52 -07:00
David Anderson 1e57376cc7 Fix bug in lower-casing API guarantee (r=fyren).
--HG--
extra : rebase_source : aa591e06a6dcf13b8964c893240ab56436a1efd3
2012-04-13 16:50:44 -07:00
David Anderson 2c06bb46ea Pushing build. 2011-10-27 23:18:43 -07:00
David Anderson 3c3bfff0cf Pushing build. 2011-10-27 23:15:55 -07:00
David Anderson a86f6d0e64 Bump major version! 2011-10-27 22:10:46 -07:00
David Anderson 5ec70c9e0d Fixed shutdown bug in SDKTools (created EntOutputMgr shutdown func) (bug 5063, r=fyren). 2011-10-17 10:47:13 -04:00
David Anderson c01101dbd0 Fix build. 2011-07-24 19:44:15 -07:00
David Anderson bb48a16466 Fix compiler creating bogus arrays when missing a dimension (bug 4902, r=fyren). 2011-07-06 17:56:40 -04:00