Commit Graph

7 Commits

Author SHA1 Message Date
Peace-Maker
b16d1f9f3f Fix crash when accessing invalid argument index
Just return null if a user tries to access an invalid argument that wasn't defined when detouring the function.
2018-04-18 00:57:58 +02:00
Peace-Maker
9bbca712b6 Fix detouring |thiscall| on linux
The this-pointer is always pushed first on the stack.
2018-04-18 00:50:26 +02:00
Peace-Maker
1b9fa3743f Add support for custom calling convention passing arguments in registers
If the compiler decided to pass an argument in a register on an internal function instead of pushing it on the stack to save time, allow us to specify the register the parameter is going to be in.

DHookAddParam received another parameter to set the register.
2018-01-23 03:15:03 +01:00
Peace-Maker
8221a6522b Save this pointer on windows after calling original function
ecx might get cleared before the original function returns leading to garbage in the post handler.
2016-12-13 17:47:59 -07:00
Peace-Maker
b18e3284e1 Fix overriding return value
The custom return value was lost when calling the original function.
Save and restore our own return value, if we're about to call the original function.
2016-12-13 17:45:22 -07:00
Peace-Maker
6e96e0fb84 Don't use std::list at all in DynamicHooks
Switch to amtl Vector.
2016-12-13 17:37:12 -07:00
Peace-Maker
2e52ab24b7 First draft of dynamic detours using Ayuto's DynamicHooks library
https://github.com/Ayuto/DynamicHooks
2016-12-11 22:02:10 -07:00