1
0
mirror of https://github.com/alliedmodders/metamod-source.git synced 2024-12-14 02:23:53 +01:00
Commit Graph

58 Commits

Author SHA1 Message Date
Pavol Marko
92c795e830 Added IHookManagerAutoGen interface
--HG--
branch : hookman_autogen
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/branches/hookman_autogen%40555
2007-11-10 16:10:55 +00:00
Pavol Marko
f3f226444a - Removed unnecessary definitions from sh_pagealloc.h
- Added CallConv_StdCall
- Added CallConv_HasVarArgs and CallConv_HasVafmt

--HG--
branch : hookman_autogen
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/branches/hookman_autogen%40552
2007-11-09 21:14:37 +00:00
Pavol Marko
83c51e6cfa Implemented memory returns on MSVC for POD types.
--HG--
branch : hookman_autogen
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/branches/hookman_autogen%40536
2007-11-01 17:29:39 +00:00
Pavol Marko
f87f2d2df8 Added SH_DECL_EXTERN$1, SH_DECL_EXTERN$1_void, SH_DECL_EXTERN$1_vafmt, SH_DECL_EXTERN$1_vafmt_void, SH_DECL_MANUALEXTERN$1 and SH_DECL_MANUALEXTERN$1_void
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40513
2007-10-14 16:25:39 +00:00
Pavol Marko
b64eb781d8 Removed "trust the prototype" model which could lead to problems. Instead, every CVfnPtr now has a list of hook managers.
-> Removed CHookManagerContainer
Also removed listcat (unnecessary since "V2" interface)

--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40510
2007-10-14 11:59:13 +00:00
Pavol Marko
b1fd9941ba Fixed comment (forgot to fix it in the last commit)
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40504
2007-10-12 19:19:17 +00:00
Pavol Marko
bf7ebed87d Fixed a problem where sourcehook ignored references in prototypes (could result in stack corruptions in some conditions)
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40503
2007-10-12 19:17:52 +00:00
Pavol Marko
f5059014e0 Changed to support 16 arguments by default
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40475
2007-10-08 15:43:23 +00:00
Pavol Marko
d0e26565dd Subtle bug fixed + tests now more resistant against compiler
optimizations

--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40472
2007-10-08 14:20:51 +00:00
Pavol Marko
53b48bab94 Added SH_GET_ORIG_VFNPTR_ENTRY
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40471
2007-10-07 23:00:38 +00:00
Pavol Marko
070b841c94 correct version now
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40470
2007-10-07 22:45:51 +00:00
Pavol Marko
effccd3522 Something :o
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40468
2007-10-07 22:35:57 +00:00
Pavol Marko
47984a6cb3 New auto-hookfunc-gen friendly interface
! breaks binary compatibility !

--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40465
2007-10-07 22:10:07 +00:00
Pavol Marko
f6c428a56d Added SH_GET_ORIG_VFNPTR_ENTRY macro
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40394
2007-05-12 19:48:31 +00:00
Pavol Marko
ac92e7ff05 Better treatement of deprecated callclasses
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40393
2007-05-12 19:05:16 +00:00
Pavol Marko
c7369c50fe Minor problem (initialization order in ExecutableClass)
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40391
2007-05-12 09:01:23 +00:00
Pavol Marko
43edf68d2c Why did MSVC not complain about this?
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40390
2007-05-12 08:57:10 +00:00
Pavol Marko
50926ce4e6 Direct VP hooks, new SH_CALL
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40389
2007-05-12 08:08:01 +00:00
Pavol Marko
8e446b28c3 Added hook ids
Added VP hooks and VP Hook test
New macro syntax (SH_ADD_HOOK + SH_STATIC/SH_MEMBER)

--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40385
2007-05-07 18:35:59 +00:00
Scott Ehlert
45bb183759 The most incredibly pointless commit ever
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40346
2007-03-02 02:43:22 +00:00
Scott Ehlert
3d7ae5c6ed Wow, lots of stuff here
1) Bumped version to 1.3
2) Fixed MSVC project files to compile and link against latest SDK
3) Fixed Linux compilation of stub_mm and sample_mm against new SDK (added -msse to makefiles)
4) Removed -fpermissive and -Wno-deprecated from Linux makefiles
5) Added -Wall -Wno-non-virtual-dtor -Werror to Linux makefiles
6) Stub_mm and sample_mm no longer dynamically link to libstdc++
7) SourceMM, stub_mm, and sample_mm compile cleanly (no warnings) with GCC 3.4.x and 4.x

--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40269
2006-08-13 11:34:30 +00:00
Pavol Marko
f7172629fb Fixed explicit qualification in sourcehook.cpp, updated Makefile for new shworker ( =P ), generated new sourcehook.h
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40252
2006-08-09 07:42:16 +00:00
Pavol Marko
6a15c59cce Added support for functions returning references; added TestRefRet, fixed typos in sourcehook_impl.h
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40250
2006-08-09 06:46:11 +00:00
Pavol Marko
45e23f32cb Added manual recalls: RETURN_META_(VALUE_)MNEWPARAMS
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40212
2006-06-08 18:34:18 +00:00
Pavol Marko
2b3d8002f1 Added manual callclasses
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40200
2006-05-14 18:29:35 +00:00
Pavol Marko
9c3b9c4bb2 rewritten sh's template files to use new shworker syntax, fixed sh_call. tbh, i'm good
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40197
2006-05-13 17:57:35 +00:00
Pavol Marko
7711afa7a8 Uh.
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40166
2005-12-23 23:32:21 +00:00
Pavol Marko
27de459d8f Added insert(iterator where, const T &what) to sh_list and simplified it on the occasion, hook managers now have (optional) version numbers, everything somehow works! Also changed _NEWPARAMS macro syntax a bit
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40164
2005-12-23 23:00:55 +00:00
Pavol Marko
9eb35c8830 One bugfix, addition of META_RETURN_(VALUE_)NEWPARAMS (implemented using recalls), tests now support compiling against an older version of sourcehook.h (through the sourcehook_test.h file) while main.cpp which now also acts as a CSourceHookImpl factory compiles against the new version.
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40163
2005-12-23 11:58:11 +00:00
Pavol Marko
8cc68b35fb Added manual hooks. I hope that I haven't broken binary compatibility - someone might want to test it.
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40158
2005-12-10 22:37:53 +00:00
Pavol Marko
f3fb7f304d :D
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40138
2005-10-15 17:55:31 +00:00
Pavol Marko
1904372f67 sh_stack now works if assert is disabled (stupid me), simple reentrancy test, META_IFACEPTR takes a type argument
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40134
2005-10-14 17:45:36 +00:00
Pavol Marko
17aa1b4c3f Untested reentrancy support; TODO: Test sh_stack and reentrancy extensively!
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40129
2005-10-12 20:25:15 +00:00
Pavol Marko
a4299bd097 It seems to work, but it's not reentrant yet.
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40124
2005-10-06 20:46:49 +00:00
Pavol Marko
b5b686a519 msvc/win32 compatibility
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40120
2005-10-03 18:31:44 +00:00
Pavol Marko
2790931701 CHANGES!
sh_memory.h: Added ModuleInMemory; first checks /proc/self/maps OR /proc/curproc/map; if not available tries DS's sigsegv trapping method
sh_tinyhash: Added simple erase function(s)
test/Makefile: New makefile
Changed internal interface: sourcehook.hxx now doesn't need to know about implementation details like vectors etc.

--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40118
2005-10-03 17:20:22 +00:00
Pavol Marko
46e9986a0e SourceHook tests pass again! Added test for list (and a small bit of tinyhash). Woot.
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40112
2005-09-23 20:14:10 +00:00
David Anderson
3391d62146 No more STL! Imported TinyHash
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40102
2005-09-13 16:47:42 +00:00
David Anderson
ead774778f std::vector -> SourceHook::CVector
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%40100
2005-09-11 23:24:18 +00:00
David Anderson
ac1ea74510 Changed to namespaces
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%4099
2005-08-12 17:44:53 +00:00
David Anderson
f73ef50b79 Initial step towards no STL - added replacement for std::list
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%4097
2005-08-12 17:33:31 +00:00
Pavol Marko
818c3990e9 Possible fix for MSVC 7.1 SH_CALL on varargs
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%4063
2005-05-05 21:02:31 +00:00
Pavol Marko
9a5437c0f1 More verbosity, gcc/linux/amd64 compatibility
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%4062
2005-05-05 14:43:40 +00:00
Pavol Marko
4dc4ed7a2b Added code for proper handling of thisptr adjustors, added new test, version info, more options for GetFuncInfo
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%4059
2005-05-05 10:40:47 +00:00
Pavol Marko
e175a7db5c Fixes
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%4051
2005-05-01 18:04:18 +00:00
Pavol Marko
9bbbea6c9e Vafmt works now
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%4050
2005-05-01 14:30:52 +00:00
Pavol Marko
9fb8a3e891 linux/gcc/32bit compatibility
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%4049
2005-05-01 12:36:48 +00:00
Pavol Marko
211535d433 Fixed RemoveHook + minor changes
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%4048
2005-05-01 09:55:51 +00:00
Pavol Marko
3234d2b79c Fixes
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%4046
2005-04-30 19:09:51 +00:00
Pavol Marko
bb2cb311ad Completly redone templates, added "vfnptrs"
--HG--
extra : convert_revision : svn%3Ac2935e3e-5518-0410-8daf-afa5dab7d4e3/trunk%4042
2005-04-29 20:29:46 +00:00