|
52 | 52 | #include <dlfcn.h> |
53 | 53 | #endif |
54 | 54 |
|
| 55 | +#ifdef ARCHITECTURE_X86 |
| 56 | +#define PLATFORM_EXTENSION "linux" |
| 57 | +#else |
| 58 | +#define PLATFORM_EXTENSION "linux64" |
| 59 | +#endif |
| 60 | + |
| 61 | +void UpdateHolyLib() |
| 62 | +{ |
| 63 | + if ( std::filesystem::exists( "garrysmod/lua/bin/gmsv_holylib_" PLATFORM_EXTENSION "_updated.so" ) ) |
| 64 | + { |
| 65 | + printf( "Found a updated holylib version.\n" ); |
| 66 | + std::filesystem::rename( "garrysmod/lua/bin/gmsv_holylib_" PLATFORM_EXTENSION ".so", "garrysmod/lua/bin/gmsv_holylib_" PLATFORM_EXTENSION "_previous.so" ); |
| 67 | + std::filesystem::rename( "garrysmod/lua/bin/gmsv_holylib_" PLATFORM_EXTENSION "_updated.so", "garrysmod/lua/bin/gmsv_holylib_" PLATFORM_EXTENSION ".so" ); |
| 68 | + printf( "Updated HolyLib\n" ); |
| 69 | + } |
| 70 | +} |
| 71 | + |
55 | 72 | void* ghostinj2 = NULL; |
56 | 73 | void* holylib = NULL; |
57 | 74 | typedef void ( *plugin_main )(); |
58 | 75 | void Load() |
59 | 76 | { |
60 | 77 | printf( "--- HolyLib-GhostInj Loading ---\n" ); |
61 | 78 |
|
62 | | -#ifdef ARCHITECTURE_X86 |
63 | | - if ( std::filesystem::exists( "garrysmod/lua/bin/gmsv_holylib_linux_updated.so" ) ) |
64 | | - { |
65 | | - printf( "Found a updated holylib version.\n" ); |
66 | | - if ( std::filesystem::remove( "garrysmod/lua/bin/gmsv_holylib_linux.so" ) ) |
67 | | - { |
68 | | - std::filesystem::rename( "garrysmod/lua/bin/gmsv_holylib_linux_updated.so", "garrysmod/lua/bin/gmsv_holylib_linux.so" ); |
69 | | - printf( "Updated HolyLib\n" ); |
70 | | - } else { |
71 | | - printf( "Failed to delete old HolyLib version!\n" ); |
72 | | - } |
73 | | - } |
| 79 | + UpdateHolyLib(); |
74 | 80 |
|
75 | 81 | holylib = dlopen( "garrysmod/lua/bin/gmsv_holylib_linux.so", RTLD_NOW ); |
76 | 82 | if ( !holylib ) |
77 | 83 | printf( "Failed to open gmsv_holylib_linux.so (%s)\n", dlerror() ); |
78 | | -#else |
79 | | - if ( std::filesystem::exists( "garrysmod/lua/bin/gmsv_holylib_linux64_updated.so" ) ) |
80 | | - { |
81 | | - printf( "Found a updated holylib version.\n" ); |
82 | | - if ( std::filesystem::remove( "garrysmod/lua/bin/gmsv_holylib_linux64.so" ) ) |
83 | | - { |
84 | | - std::filesystem::rename( "garrysmod/lua/bin/gmsv_holylib_linux64_updated.so", "garrysmod/lua/bin/gmsv_holylib_linux64.so" ); |
85 | | - printf( "Updated HolyLib\n" ); |
86 | | - } else { |
87 | | - printf( "Failed to delete old HolyLib version!\n" ); |
88 | | - } |
89 | | - } |
90 | | - |
91 | | - holylib = dlopen( "garrysmod/lua/bin/gmsv_holylib_linux64.so", RTLD_NOW ); |
92 | | - if ( !holylib ) |
93 | | - printf( "Failed to open gmsv_holylib_linux64.so (%s)\n", dlerror() ); |
94 | | -#endif |
95 | 84 |
|
96 | 85 | plugin_main plugin = reinterpret_cast< plugin_main >( dlsym( holylib, "HolyLib_PreLoad" ) ); |
97 | 86 | if ( !plugin ) { |
|
0 commit comments