canyie/pine

[TODO] Pending Hook support

canyie opened this issue · 0 comments

For static method, when its declaring class is not initialized, its entry point is a trampoline, call it will make the declaring class to be initialized, and all entry points of static methods will be reset (see ClassLinker::FixupStaticTrampolines). At present, corresponding to the static method, we will manually initialize its declaring class, which will cause the class to be initialized prematurely and may have side effects; we can hook some system functions, and wait until the declaring class is initialized before hooking.