mirror of
https://git.recroomarchive.org/Radium/libradhook.git
synced 2026-08-07 09:10:59 +00:00
initial commit
This commit is contained in:
22
tests/test_trampoline.cpp
Normal file
22
tests/test_trampoline.cpp
Normal file
@@ -0,0 +1,22 @@
|
||||
#include <cassert>
|
||||
#include "radhook/radhook.h"
|
||||
|
||||
static int fn() { return 42; }
|
||||
static int detour() { return 1337; }
|
||||
|
||||
using Fn = int(*)();
|
||||
|
||||
int main() {
|
||||
RadHookHandle h = nullptr;
|
||||
|
||||
RadHookCreate((void*)fn, (void*)detour, &h);
|
||||
|
||||
auto orig = RadHookGetOriginalAs<Fn>(h);
|
||||
assert(orig != nullptr);
|
||||
|
||||
// trampoline must bypass hook
|
||||
assert(orig() == 42);
|
||||
|
||||
RadHookDestroy(h);
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user