refactor: remove disable composer modules

This commit is contained in:
rhunk
2024-04-26 18:57:48 +02:00
parent debaecf91d
commit 1e17f48c6c
10 changed files with 1 additions and 66 deletions

View File

@ -12,7 +12,6 @@
typedef struct {
bool disable_bitmoji;
bool disable_metrics;
bool hook_asset_open;
bool composer_hooks;
} native_config_t;

View File

@ -1,25 +0,0 @@
#pragma once
#include <android/asset_manager.h>
namespace AssetHook {
jmethodID native_lib_on_asset_load;
HOOK_DEF(AAsset*, AAssetManager_open_hook, AAssetManager* mgr, const char* filename, int mode) {
if (common::native_config->hook_asset_open) {
JNIEnv *env = nullptr;
common::java_vm->GetEnv((void **)&env, JNI_VERSION_1_6);
if (!env->CallBooleanMethod(common::native_lib_object, native_lib_on_asset_load, env->NewStringUTF(filename))) {
return nullptr;
}
}
return AAssetManager_open_hook_original(mgr, filename, mode);
}
void init(JNIEnv *env) {
native_lib_on_asset_load = env->GetMethodID(env->GetObjectClass(common::native_lib_object), "shouldLoadAsset", "(Ljava/lang/String;)Z");
DobbyHook((void *) AAssetManager_open, (void *) AAssetManager_open_hook, (void **) &AAssetManager_open_hook_original);
}
}

View File

@ -5,7 +5,6 @@
#include "logger.h"
#include "common.h"
#include "hooks/asset_hook.h"
#include "hooks/unary_call.h"
#include "hooks/fstat_hook.h"
#include "hooks/sqlite_mutex.h"
@ -33,7 +32,6 @@ bool JNICALL init(JNIEnv *env, jobject clazz) {
util::remap_sections(BUILD_PACKAGE);
UnaryCallHook::init(env);
AssetHook::init(env);
FstatHook::init();
SqliteMutexHook::init();
DuplexHook::init(env);
@ -52,7 +50,6 @@ void JNICALL load_config(JNIEnv *env, jobject, jobject config_object) {
native_config->disable_bitmoji = GET_CONFIG_BOOL("disableBitmoji");
native_config->disable_metrics = GET_CONFIG_BOOL("disableMetrics");
native_config->hook_asset_open = GET_CONFIG_BOOL("hookAssetOpen");
native_config->composer_hooks = GET_CONFIG_BOOL("composerHooks");
}

View File

@ -3,6 +3,5 @@ package me.rhunk.snapenhance.nativelib
data class NativeConfig(
val disableBitmoji: Boolean = false,
val disableMetrics: Boolean = false,
val hookAssetOpen: Boolean = false,
val composerHooks: Boolean = false,
)

View File

@ -5,7 +5,6 @@ import android.util.Log
@Suppress("KotlinJniMissingFunction")
class NativeLib {
var nativeUnaryCallCallback: (NativeRequestData) -> Unit = {}
var nativeShouldLoadAsset: (String) -> Boolean = { true }
companion object {
var initialized = false
@ -39,11 +38,6 @@ class NativeLib {
return null
}
@Suppress("unused")
private fun shouldLoadAsset(name: String) = runCatching {
nativeShouldLoadAsset(name)
}.getOrNull() ?: true
fun loadNativeConfig(config: NativeConfig) {
if (!initialized) return
loadConfig(config)