diff options
author | comex | 2015-01-25 01:32:07 -0500 |
---|---|---|
committer | comex | 2015-01-25 01:32:07 -0500 |
commit | f14efa13e2c78d7b7788f5b1125d1ba865cbe15e (patch) | |
tree | 3f12083af90729caabed99e5c32e20b11d1cd022 /lib/darwin | |
parent | fixes (diff) | |
download | substitute-f14efa13e2c78d7b7788f5b1125d1ba865cbe15e.tar.gz |
fix substrate-compat; check in test
Diffstat (limited to 'lib/darwin')
-rw-r--r-- | lib/darwin/substrate-compat.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/lib/darwin/substrate-compat.c b/lib/darwin/substrate-compat.c index 345d53f..54bdd2e 100644 --- a/lib/darwin/substrate-compat.c +++ b/lib/darwin/substrate-compat.c @@ -38,13 +38,18 @@ void *SubFindSymbol(void *image, const char *name) { return ptr; } -/* +#ifdef TARGET_DIS_SUPPORTED EXPORT void SubHookFunction(void *symbol, void *replace, void **result) __asm__("SubHookFunction"); void SubHookFunction(void *symbol, void *replace, void **result) { - // ... + struct substitute_function_hook hook = {symbol, replace, result}; + int ret = substitute_hook_functions(&hook, 1, 0); + if (ret) { + panic("SubHookFunction: substitute_hook_functions returned %s\n", + substitute_strerror(ret)); + } } -*/ +#endif EXPORT void SubHookMessageEx(Class _class, SEL sel, IMP imp, IMP *result) |