Skip to content

v0.2.0

Compare
Choose a tag to compare
@Smertig Smertig released this 06 Feb 20:07
· 47 commits to master since this release

Full Changelog: v0.1.0...v0.2.0

This is mostly maintenance release.

Change Log

  • Remove rcmp::opcode_length and rcmp::make_raw_hook from public API
  • Add rcmp::hook_indirect_function that allows to hook virtual functions (and more)
  • Add rcmp::with_signature<..> utility, that is used to change calling convention of callable at compile-time
  • Rework and simplify implementation
    • Drop std::function for better inlining
    • Internal state of hook is now trivially constructible, so it doesn't require any additional initialization on program startup and can be used before main()
  • Add rcmp::generic_hook_function as a generic way of function hooking (if you want to customize rcmp behaviour without digging into templates)
  • Move to github actions

Commits

  • do not update replaced function in case of double hook (Smertig)
  • 44e6226: Stop using type-erased holder for hook, check callable concept statically (Smertig)
  • a37bc10: Make address_t ctor constexpr, add asserts (workaround for static initialization order fiasco) (int3)
  • 7f01a4e: Implement rcmp::with_signature for compile-time signature conversions (Smertig)
  • 66c33d0: Fix linkage error in tests (travis, gcc, x86) (Smertig)
  • 10e743b: Simplify implementation of hook_function (Smertig)
  • dcf7e56: Enable thiscall hooking tests on MSVC compiler (Smertig)
  • 4d758a0: Simplify PMF tests (Smertig)
  • 4dccfd9: Implement rcmp::hook_indirect_function (actually a way to hook virtual functions) (Smertig)
  • 72cef84: Rewrite vtable test to prevent devirtualization (gcc) (Smertig)
  • e57098b: Make rcmp::detail::hook_impl generic over hook policy (Smertig)
  • 354e98c: Introduce policy-based rcmp::generic_hook_function (Smertig)
  • eb3d5df: Remove opcode_length and make_raw_hook from public API (Smertig)
  • c6260f4: Move hook policies to separate files (Smertig)
  • ae5a953: Missing include (Smertig)
  • 47ad93d: Bump Catch version: v2.13.1 -> v2.13.10 (Smertig)