diff --git a/.gitmodules b/.gitmodules index a0b4289..001fc38 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,6 +1,9 @@ [submodule "Dobby"] path = app/src/main/cpp/Dobby url = https://github.com/JingMatrix/Dobby +[submodule "local_cxa_atexit_finalize_impl"] + path = app/src/main/cpp/local_cxa_atexit_finalize_impl + url = https://github.com/5ec1cff/local_cxa_atexit_finalize_impl [submodule "json"] path = app/src/main/cpp/json url = https://github.com/nlohmann/json diff --git a/app/src/main/cpp/CMakeLists.txt b/app/src/main/cpp/CMakeLists.txt index 5e62224..66d178f 100644 --- a/app/src/main/cpp/CMakeLists.txt +++ b/app/src/main/cpp/CMakeLists.txt @@ -6,7 +6,7 @@ find_package(cxx REQUIRED CONFIG) link_libraries(cxx::cxx) -add_library(${CMAKE_PROJECT_NAME} SHARED ${CMAKE_SOURCE_DIR}/main.cpp) +add_library(${CMAKE_PROJECT_NAME} SHARED main.cpp local_cxa_atexit_finalize_impl/atexit.cpp) add_subdirectory(Dobby) diff --git a/app/src/main/cpp/local_cxa_atexit_finalize_impl b/app/src/main/cpp/local_cxa_atexit_finalize_impl new file mode 160000 index 0000000..ab0dd0a --- /dev/null +++ b/app/src/main/cpp/local_cxa_atexit_finalize_impl @@ -0,0 +1 @@ +Subproject commit ab0dd0a64d3fec271b07e18a2f92ef1e785e778a diff --git a/app/src/main/cpp/main.cpp b/app/src/main/cpp/main.cpp index ab6abc2..966c17e 100644 --- a/app/src/main/cpp/main.cpp +++ b/app/src/main/cpp/main.cpp @@ -388,16 +388,6 @@ static void companion(int fd) { jsonVector.clear(); } -/* - * Fix for Dobby detections - * Must be added to all Zygisk C++ libraries in a project - * - * Reference: https://github.com/JingMatrix/NeoZygisk/commit/76d54228c7e6fe14cca93338865008946b94f7ee - */ -extern "C" int __cxa_atexit(void (*func)(void*), void* arg, void* dso) { - return 0; -} - REGISTER_ZYGISK_MODULE(PlayIntegrityFix) REGISTER_ZYGISK_COMPANION(companion)