Commit Graph

228 Commits

Author SHA1 Message Date
Ryan Stecker
0bde28cc17 Add a command to dump profiling output. 2014-08-09 13:32:05 -05:00
Ruben Gonzalez
7a88386568 Add OnCoreMapEnd to extension's interface. 2014-08-08 01:01:47 -04:00
Nicholas Hastings
4e5b1a58ce Add ValveFS support to more filesystem functions: OpenDirectory (CloseHandle on directory) ReadDirEntry DirExists CreateDirectory RenameFile 2014-08-06 13:15:24 -07:00
Peace-Maker
bfcfbbe107 Add WritePackFunction and ReadPackFunction natives
Adds type safety to CDataPack. Cells can't be read as Float anymore. Now
you're able to store a function pointer in a datapack and be sure the
pointer can't be read as a cell and a cell can't be read as a function
pointer.
2014-08-04 02:05:25 +02:00
Nicholas Hastings
f2b19e6c87 Add more accurate return value for DeleteFile when using Valve FS. 2014-08-03 09:10:02 -04:00
Nicholas Hastings
573aea20fb More progress:
Abstracted many fs funcs with helper class.
Removed much duplicated code.
Fixed ReadFile assuming FS errors for ValveFS.
Added ValveFS support for ReadFileString, WriteFile, WriteFileString, DeleteFile.
Added missing param in doc for OpenFile.
2014-08-01 12:38:51 -07:00
Nicholas Hastings
5e7e7ce551 Improved FPrint(f) passthrough 2014-08-01 06:09:09 -07:00
Ruben Gonzalez
c116353285 WiP addition of support for ValveFS to many more filesystem natives. 2014-07-31 20:56:07 -04:00
David Anderson
2a46f8f881 Add GetNativeFunction (bug 6200). 2014-07-23 23:36:11 -07:00
David Anderson
db9ee5326a Allow CloseHandle() on nulls. 2014-07-05 13:52:44 -07:00
Andrew
3022b665dd Initialized the mask variable.
Moved the FPERM_ defines into the .cpp and removed the header file.
2014-06-27 16:43:51 -04:00
David Anderson
b26552d74c Improve usability of start/stop. 2014-06-24 20:55:53 -07:00
David Anderson
fac52a2897 Fill out API more. 2014-06-24 01:18:16 -07:00
David Anderson
ec61d4d188 Add a general profiling abstraction layer. 2014-06-24 01:04:13 -07:00
David Anderson
b64551e984 Fix a Handle leak when reporting transaction errors. 2014-06-22 11:05:20 -07:00
Andrew
f3299b2c8c Added a new function SetFilePermissions to set permissions of a file. I'm not sure about the Windows implementation. See this feature request: https://bugs.alliedmods.net/show_bug.cgi?id=6152 2014-06-21 00:45:07 -04:00
David Anderson
f250461648 Fix typo. 2014-06-05 01:28:53 -07:00
David Anderson
36c342fc7b Add comment. 2014-06-05 01:22:44 -07:00
David Anderson
e6d8416f0e Fix typo. 2014-06-05 00:59:46 -07:00
David Anderson
cb16a78681 Fix memory bugs. 2014-06-05 00:38:09 -07:00
David Anderson
2930fb1963 Change indentation. 2014-06-04 22:46:40 -07:00
David Anderson
d7b49f7706 Initial implementation. 2014-06-04 22:45:26 -07:00
Nicholas Hastings
6ee42dc7fe Really fix Mac build. 2014-05-29 15:09:38 -04:00
Nicholas Hastings
e0f6544c86 Fix Mac build. 2014-05-29 14:16:11 -04:00
Asher Baker
ab68e70998 Merge pull request #14 from psychonic/rip-magic
Replace magic numbers for sm_show_activity with named constants (r=asherkin).
2014-05-29 19:06:22 +01:00
Nicholas Hastings
beb3f8c1d4 Replace magic numbers for sm_show_activity with named constants. 2014-05-29 13:54:51 -04:00
Nicholas Hastings
35784c018d Move adminsys and more natives from core to logic. 2014-05-29 13:31:12 -04:00
Nicholas Hastings
dbc881143b Move many player natives from core to logic. 2014-05-28 23:20:41 -04:00
Peace-Maker
6ac013376f Call OnLibraryAdded for all available libraries (bug 5925, PR #4)
commit c1b064c9232553045f6f5bfaf7df0feb6ceb4571
Author: Peace-Maker <peace-maker@wcfan.de>
Date:   Wed May 28 03:16:22 2014 +0200

    Coding style adjustments

commit 37a16dbba24cc2035fb8838be8729067cb9bc13a
Author: Peace-Maker <peace-maker@wcfan.de>
Date:   Wed May 28 03:03:25 2014 +0200

    Load core.phrases before calling OnLibraryAdded

commit 676ac951111c7e8f565debbd4316850a4c4a8d00
Author: Peace-Maker <peace-maker@wcfan.de>
Date:   Tue May 27 13:18:48 2014 +0200

    Call OnLibraryAdded for all available librarys (bug 5925)

    When loading multiple plugins at once (on server start or mapchange)
    OnLibraryAdded is only called for libraries which are loaded after the
    current plugin. The plugin isn't informed about the libraries that were
    added before its OnPluginStart forward was called.

    This patch calls OnLibraryAdded for all already registered libraries the
    current plugin has missed.
2014-05-27 19:26:58 -07:00
David Anderson
cfde247ef7 Revert "Call OnLibraryAdded for all available librarys (bug 5925, pull request #4)"
This reverts commit ac11eb8910.
2014-05-27 19:25:52 -07:00
David Anderson
ac11eb8910 Call OnLibraryAdded for all available librarys (bug 5925, pull request #4)
commit c1b064c9232553045f6f5bfaf7df0feb6ceb4571
Author: Peace-Maker <peace-maker@wcfan.de>
Date:   Wed May 28 03:16:22 2014 +0200

    Coding style adjustments

commit 37a16dbba24cc2035fb8838be8729067cb9bc13a
Author: Peace-Maker <peace-maker@wcfan.de>
Date:   Wed May 28 03:03:25 2014 +0200

    Load core.phrases before calling OnLibraryAdded

commit 676ac951111c7e8f565debbd4316850a4c4a8d00
Author: Peace-Maker <peace-maker@wcfan.de>
Date:   Tue May 27 13:18:48 2014 +0200

    Call OnLibraryAdded for all available librarys (bug 5925)

    When loading multiple plugins at once (on server start or mapchange)
    OnLibraryAdded is only called for libraries which are loaded after the
    current plugin. The plugin isn't informed about the libraries that were
    added before its OnPluginStart forward was called.

    This patch calls OnLibraryAdded for all already registered libraries the
    current plugin has missed.
2014-05-27 19:24:33 -07:00
Kyle Sanderson
9c62e94239 Optimize native call if statically bound (bug 5842, r=ds,fyren f=dvander).
Original patch written by David Anderson (original r from Fyren).
- Updated to function with the current JIT compiler.
- Took in clean-ups from later-dated patches.
2014-05-11 14:36:32 -07:00
Peace-Maker
5149205109 Clear default driver reference if unloaded (bug 5934, r=dvander). 2014-05-09 10:36:58 -07:00
Nicholas Hastings
f0d6fd1912 Fix usage of replace param in SetTrieArray (bug 6113, r=asherkin). 2014-05-04 21:38:32 -04:00
Scott Ehlert
ecec7dbef3 Deduplicate a number of files used by extensions by moving them to the public directory (bug 5341, r=psychonic).
These files include smsdk_ext.cpp, smsdk_ext.h, sm_memtable.h, CDetour/*, and asm/*.
The smsdk_config.h file for each extension has also been moved out of the 'sdk' directory into its parent.

--HG--
rename : extensions/bintools/sdk/smsdk_config.h => extensions/bintools/smsdk_config.h
rename : extensions/clientprefs/sdk/smsdk_config.h => extensions/clientprefs/smsdk_config.h
rename : extensions/cstrike/sdk/smsdk_config.h => extensions/cstrike/smsdk_config.h
rename : extensions/curl/sdk/smsdk_config.h => extensions/curl/smsdk_config.h
rename : extensions/geoip/sdk/smsdk_config.h => extensions/geoip/smsdk_config.h
rename : extensions/mysql/sdk/smsdk_config.h => extensions/mysql/smsdk_config.h
rename : extensions/regex/sdk/smsdk_config.h => extensions/regex/smsdk_config.h
rename : extensions/sdkhooks/sdk/smsdk_config.h => extensions/sdkhooks/smsdk_config.h
rename : extensions/sdktools/sdk/smsdk_config.h => extensions/sdktools/smsdk_config.h
rename : extensions/sqlite/sdk/smsdk_config.h => extensions/sqlite/smsdk_config.h
rename : extensions/structs/sdk/smsdk_config.h => extensions/structs/smsdk_config.h
rename : extensions/tf2/sdk/smsdk_config.h => extensions/tf2/smsdk_config.h
rename : extensions/topmenus/sdk/smsdk_config.h => extensions/topmenus/smsdk_config.h
rename : extensions/updater/sdk/smsdk_config.h => extensions/updater/smsdk_config.h
rename : extensions/sdktools/CDetour/detourhelpers.h => public/CDetour/detourhelpers.h
rename : extensions/sdktools/CDetour/detours.cpp => public/CDetour/detours.cpp
rename : extensions/sdktools/CDetour/detours.h => public/CDetour/detours.h
rename : extensions/sdktools/asm/asm.c => public/asm/asm.c
rename : extensions/sdktools/asm/asm.h => public/asm/asm.h
rename : public/sample_ext/sdk/smsdk_config.h => public/sample_ext/smsdk_config.h
rename : core/logic/sm_memtable.h => public/sm_memtable.h
rename : public/sample_ext/sdk/smsdk_ext.cpp => public/smsdk_ext.cpp
rename : public/sample_ext/sdk/smsdk_ext.h => public/smsdk_ext.h
2014-04-23 21:19:28 -05:00
David Anderson
61c4d2b805 Fix typo pointed out by Nephrite (bug 6107, comment #7).
--HG--
extra : rebase_source : 9e62da715c2560dd102644b04b5d46413d100890
2014-04-23 10:18:56 -07:00
David Anderson
c64edf31fc Fix Windows build, again. 2014-04-22 20:04:12 -07:00
David Anderson
e69e9eddc7 Change float comparison operators to return false for NaN (bug 6107, r=ds).
--HG--
extra : rebase_source : a11c56fb23d6617545def3591ec6100dd143eb3e
2014-04-22 19:40:45 -07:00
Ondrej Hošek
c3e9d7de41 Add support for single-file gamedata custom overrides (bug 5386, r=psychonic). 2014-04-07 12:14:26 -04:00
Nicholas Hastings
563dd617af Add sm_reload_translations command (bug 5750, r=asherkin). 2014-03-30 12:08:11 -04:00
Nicholas Hastings
2f6b64e92e Make IGameConfig::GetMemSig return value clearer (bug 6081, r=asherkin). 2014-03-29 14:22:53 -04:00
Scott Ehlert
ce6b993954 Use Linux game data for offsets and signatures/symbols on OS X if Mac-specific data is not available (bug 6056, r=dvander).
Although unlikely, OS X game data can also be used on Linux if Linux-specfic data is missing.
2014-02-15 23:23:53 -06:00
Nicholas Hastings
5abd9edf62 Remove over-aggressive error handling of Addresses gamedata (bug 6044, r=asherkin).
--HG--
extra : rebase_source : 704dcfdf285286814411f3dd5be2dd6e02872085
2014-02-10 09:43:10 -05:00
Scott Ehlert
e00e879af5 Use == instead of is operator for checking string equality in AMBuild scripts (bug 6043, r=dvander). 2014-02-09 22:50:20 -06:00
Ruben Gonzalez
925d514224 Increase max sig length (irc, r=psychonic)
--HG--
extra : amend_source : 24f20bd01d0277e255f47e0c4392396ec1871104
2014-02-08 20:00:52 -05:00
Kyle Sanderson
36cc7610a1 Fix bad handle Forward handling in RequstFrame (irc, r=psychonic). 2014-02-08 15:10:35 -07:00
Kyle Sanderson
06d2017a95 Remove unmanaged forwards from lookup list on Release (bug 6025, r=psychonic). 2014-02-08 14:51:44 -07:00
Nicholas Hastings
ad5740f8a7 Add support for Valve search paths to GetFileSize native (bug 5931, r=asherkin). 2014-01-07 14:24:53 -05:00
Nicholas Hastings
310f77d96a Consolidate FileExists usage in logic bin (bug 5931, r=asherkin). 2014-01-07 14:24:41 -05:00
Nicholas Hastings
121c3973d6 Add support for Insurgency mapcycle format (bug 5966, r=asherkin).
--HG--
extra : rebase_source : 3ae48e176177b1816351cc0cdd5c8dd35e630ea3
2014-01-07 10:24:44 -05:00
Nicholas Hastings
17212616d7 Support all file search paths when finding mapcycle file (bug 5839, r=asherkin).
--HG--
extra : rebase_source : 997dedcbac4a9249111c7424723f5b386baee77d
2014-01-07 10:24:05 -05:00
David Anderson
e1a820dcf9 Port simple C++ build scripts to AMBuild 2 (bug 5997 part 1, r=ds). 2013-12-30 17:50:56 -05:00
David Anderson
f0e4fe66ba AMTL updates and changes to adapt for them to fix menu crashes (bug 5921, r=psychonic).
AMTL:
Removes isVoid from AString.
Fixes support inserting to Vector at length.

--HG--
extra : rebase_source : 02805fad60c2b759a0e2e91c081144854a8e0b54
2013-11-30 10:51:28 -05:00
Kyle Sanderson
e01fc5e697 Add RequestFrame native for one-off frame actions (bug 5965, r=dvander). 2013-10-29 22:10:40 -04:00
David Anderson
96d6cf8def Fix some memory errors (bug 5904, r=ds). 2013-10-29 18:58:34 -04:00
Nicholas Hastings
1ba6b2653a Move ForwardSys from core to logic (bug 5953, r=fyren).
--HG--
rename : core/ForwardSys.cpp => core/logic/ForwardSys.cpp
rename : core/ForwardSys.h => core/logic/ForwardSys.h
2013-10-09 08:43:08 -04:00
Nicholas Hastings
1d1b5d1c6d Move DBManager and DB natives from core to logic (bug 5953, r=fyren).
--HG--
rename : core/Database.cpp => core/logic/Database.cpp
rename : core/Database.h => core/logic/Database.h
rename : core/sm_simple_prioqueue.h => core/logic/sm_simple_prioqueue.h
rename : core/smn_database.cpp => core/logic/smn_database.cpp
rename : core/sm_queue.h => public/sm_queue.h
2013-10-09 08:43:08 -04:00
Nicholas Hastings
9027d15211 Move ADTFactory from core to logic (bug 5953, r=fyren).
--HG--
rename : core/ADTFactory.cpp => core/logic/ADTFactory.cpp
rename : core/ADTFactory.h => core/logic/ADTFactory.h
2013-10-09 08:43:08 -04:00
Kyle Sanderson
e3cb33bbda Switch StringToInt(Ex) from strtol to strtoul (bug 5939, r=psychonic). 2013-10-06 15:40:03 -04:00
Peace-Maker
985b7831cf Fix typo stopping plugins from reaching ext dep lists (bug 5851, r=fyren). 2013-09-30 12:26:45 -04:00
Kyle Sanderson
ed6fe7519a Detech dispatch after Handles are freed (bug 5853, r=asherkin). 2013-09-14 12:23:04 -04:00
David Anderson
2dae228f10 Remove memtables from HandleSys (bug 5899 part 5, r=fyren). 2013-08-31 19:50:36 -07:00
David Anderson
b917c540aa Remove memtables from GameConfigs (bug 5899 part 4, r=fyren). 2013-08-31 19:50:26 -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
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
Nicholas Hastings
d9f23a8af2 Fix translator system not loading languages with long identifier (bug 5888, r=dvander). 2013-08-28 13:18:55 -04: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
Kyle Sanderson
2b6257e94e Fixed potential deadlock in HandleSystem::TryAndFreeSomeHandles (bug 5665, r=dvander). 2013-08-25 09:59:13 -04: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
systematicmania
da650606e3 Fixed optional dependencies logging errors (again) (bug 5739, r=dvander).
Regression from changeset 4c93f74cae51 and changeset 7dae5b0b8e28 in bug 5860.
2013-08-24 00:12:21 -04: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
a8cebbe3fd Fix windows build. 2013-08-22 17:55:49 -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
45856816c1 Rewrite IThreader implementation around new synchronization primitives (bug 5862, r=fyren). 2013-08-19 20:58:02 -07:00
Nicholas Hastings
00b1f33725 Fixed typo in Nuclear Dawn gamedata backcompat fix. 2013-08-14 13:14:59 -04:00
Nicholas Hastings
f3ac8f6649 Added gamedata and extension loading compat shims for Nuclear Dawn (bug 5813, r=asherkin). 2013-08-14 11:56:34 -04:00
Peace-Maker
97fc093eef Fix crash creating a timer when there are no handles available. (bug 5317, r=asherkin) 2013-08-12 00:57:26 +01:00
Kyle Sanderson
6af85409f1 Dump handle information when a plugin is forcefully unloaded. (bug 5666, r=asherkin) 2013-08-12 00:45:29 +01:00
Kyle Sanderson
86c699dd36 Fixed various memory issues. (bug 5766, r=asherkin) 2013-08-12 00:44:22 +01:00
Nicholas Hastings
37316fed84 Fixed a path not using updated mapcycle file detection (bug 5719). 2013-08-05 11:36:59 -04:00
Nicholas Hastings
8fe6d09613 Check all possible mapcycle paths on newer orangebox games (bug 5719, r=asherkin). 2013-07-31 22:57:50 -04:00
Nicholas Hastings
a36c266e7d Split TF2, DoD:S, HL2:DM, and ND to separate binaries (bug 5813, r=asherkin). 2013-07-21 11:53:56 -04:00
Kyle Sanderson
b3c0b964b5 Added many missing handle security checks (bug 5595, r=psychonic).
--HG--
extra : rebase_source : cc5bf3057bbce89fc14bff9c673821c3146c588b
2013-07-18 20:34:43 -04:00
Peace-Maker
5a5d8d2d07 Fixed typo in too-many-params native error message (r=psychonic). 2013-07-17 08:05:42 -04:00
Nicholas Hastings
c8e6128720 Fixed build for real. 2013-07-04 11:28:32 -04:00
Nicholas Hastings
55583540a8 Fix posix builds. 2013-07-03 23:27:04 -04:00
Ryan Stecker
9b5d0228be Fixed ReadMapList not seeing maps in all valveFS paths (bug 5715, r=asherkin). 2013-07-03 23:14:55 -04:00
Kyle Sanderson
bb7cfd2493 Fixed dereferencing potential null pointer in CPlugin::GetProperty (bug 5725, r=dvander). 2013-05-06 12:12:00 -04:00