Commit Graph

18 Commits

Author SHA1 Message Date
Maschell
586ed091d7 Use the function patcher module for the plugin function patches 2020-08-12 18:30:21 +02:00
Maschell
7fc917da40 Use libfunctionpatcher for non-plugin function patches 2020-08-12 18:30:21 +02:00
Maschell
32d635a512 Don't clear the .bss section anymore, call the wut init functions only once, except the devop one 2020-08-12 18:30:21 +02:00
Maschell
0943f7f57b Adjust the setter the PluginContainer to use const values 2020-08-12 18:30:21 +02:00
Maschell
4c7fec9737 Fix setting the trampolineID 2020-08-12 18:30:21 +02:00
Maschell
3e30e5bbd1 Use alloc/free from memorymapping module if possible 2020-08-12 18:30:21 +02:00
Maschell
850ee0a433 Add flush after patching the functions 2020-08-12 18:30:21 +02:00
Maschell
c084e114e9 Organize imports and format code 2020-08-12 18:30:21 +02:00
Maschell
7556dab6e9 Add option to delete or not delete the actual plugin data when unloading plugins 2020-08-12 18:30:21 +02:00
Maschell
fe68f7fa00 Make sure to restore patches before unloading plugins 2020-08-12 18:30:21 +02:00
Maschell
0177dfd604 Add callDeinitHooks and RestorePatches to the PlugingManagement 2020-08-12 18:30:21 +02:00
Maschell
2c1c356450 Free trampolin data when unloading plugins 2020-08-12 18:30:21 +02:00
Maschell
d9e57ecc9d Move loadPlugins function to PluginManagement 2020-08-12 18:30:21 +02:00
Maschell
492dcacaad Add a function to unload all plugins from memory in the PluginManagement 2020-08-12 18:30:21 +02:00
Maschell
59f361f7de Formatting 2020-08-12 18:30:21 +02:00
Maschell
10b118db00 Call the CRT hooks at each application start, not just once. 2020-08-12 18:30:21 +02:00
Maschell
87fa405af2 Add intial support for function patching via plugins 2020-08-12 18:30:21 +02:00
Maschell
2e0a02f5aa Increase the maximum number of relocations from 500 to 1000. Refactor some code to a "PluginManagement" class. 2020-08-12 18:30:21 +02:00