Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: libadblockplus-android/jni/JniJsEngine.cpp

Issue 29533564: Issue 5556 - Update to use libadblockplus revision hg:566f64c8a2a8 (Closed) Base URL: github.com:abby-sergz/libadblockplus-android.git
Patch Set: Created Sept. 1, 2017, 9:38 a.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: libadblockplus-android/jni/JniJsEngine.cpp
diff --git a/libadblockplus-android/jni/JniJsEngine.cpp b/libadblockplus-android/jni/JniJsEngine.cpp
index e5b08d59fb90b39fb9f4cc5d49e2a56bad128f4b..6faa79eeaca583d14a74fc8ad59eb1a41e07fe97 100644
--- a/libadblockplus-android/jni/JniJsEngine.cpp
+++ b/libadblockplus-android/jni/JniJsEngine.cpp
@@ -40,7 +40,7 @@ static AdblockPlus::JsEngine& GetJsEngineRef(jlong ptr)
}
static jlong JNICALL JniCtor(JNIEnv* env, jclass clazz, jobject jAppInfo,
- jobject logSystem, jobject webRequest)
+ jobject logSystem, jobject webRequest, jstring jBasePath)
{
AdblockPlus::AppInfo appInfo;
@@ -60,6 +60,13 @@ static jlong JNICALL JniCtor(JNIEnv* env, jclass clazz, jobject jAppInfo,
{
jniJsEngine->jsEngine->SetWebRequest(std::make_shared<JniWebRequest>(env, webRequest));
}
+ if (jBasePath)
+ {
+ auto fileSystem = std::make_shared<AdblockPlus::DefaultFileSystemSync>();
+ std::string basePath = JniJavaToStdString(env, jBasePath);
+ fileSystem->SetBasePath(basePath);
+ jniJsEngine->jsEngine->SetFileSystem(fileSystem);
+ }
return JniPtrToLong(jniJsEngine);
}
@@ -144,22 +151,6 @@ static void JNICALL JniTriggerEvent(JNIEnv* env, jclass clazz, jlong ptr, jstrin
CATCH_AND_THROW(env)
}
-static void JNICALL JniSetDefaultFileSystem(JNIEnv* env, jclass clazz, jlong ptr, jstring jBasePath)
-{
- AdblockPlus::JsEngine& engine = GetJsEngineRef(ptr);
-
- try
- {
- auto fileSystem = std::make_shared<AdblockPlus::DefaultFileSystemSync>();
-
- std::string basePath = JniJavaToStdString(env, jBasePath);
- fileSystem->SetBasePath(basePath);
-
- engine.SetFileSystem(fileSystem);
- }
- CATCH_AND_THROW(env)
-}
-
static jobject JNICALL JniNewLongValue(JNIEnv* env, jclass clazz, jlong ptr, jlong value)
{
AdblockPlus::JsEngine& engine = GetJsEngineRef(ptr);
@@ -202,7 +193,7 @@ static jobject JNICALL JniNewStringValue(JNIEnv* env, jclass clazz, jlong ptr, j
static JNINativeMethod methods[] =
{
- { (char*)"ctor", (char*)"(" TYP("AppInfo") TYP("LogSystem") TYP("WebRequest") ")J", (void*)JniCtor },
+ { (char*)"ctor", (char*)"(" TYP("AppInfo") TYP("LogSystem") TYP("WebRequest") "Ljava/lang/String;)J", (void*)JniCtor },
{ (char*)"dtor", (char*)"(J)V", (void*)JniDtor },
{ (char*)"setEventCallback", (char*)"(JLjava/lang/String;J)V", (void*)JniSetEventCallback },
@@ -211,8 +202,6 @@ static JNINativeMethod methods[] =
{ (char*)"evaluate", (char*)"(JLjava/lang/String;Ljava/lang/String;)" TYP("JsValue"), (void*)JniEvaluate },
- { (char*)"setDefaultFileSystem", (char*)"(JLjava/lang/String;)V", (void*)JniSetDefaultFileSystem },
-
{ (char*)"newValue", (char*)"(JJ)" TYP("JsValue"), (void*)JniNewLongValue },
{ (char*)"newValue", (char*)"(JZ)" TYP("JsValue"), (void*)JniNewBooleanValue },
{ (char*)"newValue", (char*)"(JLjava/lang/String;)" TYP("JsValue"), (void*)JniNewStringValue }

Powered by Google App Engine
This is Rietveld