summaryrefslogtreecommitdiff
path: root/Source/Android/jni/AndroidCommon/AndroidCommon.cpp
diff options
context:
space:
mode:
authorJosJuice <josjuice@gmail.com>2022-12-27 22:28:06 +0100
committerJosJuice <josjuice@gmail.com>2022-12-27 22:59:42 +0100
commitb3a368ae06c5f82afdd617355afba388c90d19e8 (patch)
tree846b20960fb4ad0c3b497b004809079d215751b6 /Source/Android/jni/AndroidCommon/AndroidCommon.cpp
parent0b9351c194c8451576b183971e363ceaf658a448 (diff)
Android: Add VectorToJObjectArray utility function
Diffstat (limited to 'Source/Android/jni/AndroidCommon/AndroidCommon.cpp')
-rw-r--r--Source/Android/jni/AndroidCommon/AndroidCommon.cpp13
1 files changed, 3 insertions, 10 deletions
diff --git a/Source/Android/jni/AndroidCommon/AndroidCommon.cpp b/Source/Android/jni/AndroidCommon/AndroidCommon.cpp
index 0a2667b1b6..53ef9174f4 100644
--- a/Source/Android/jni/AndroidCommon/AndroidCommon.cpp
+++ b/Source/Android/jni/AndroidCommon/AndroidCommon.cpp
@@ -20,7 +20,7 @@ std::string GetJString(JNIEnv* env, jstring jstr)
const jchar* jchars = env->GetStringChars(jstr, nullptr);
const jsize length = env->GetStringLength(jstr);
const std::u16string_view string_view(reinterpret_cast<const char16_t*>(jchars), length);
- const std::string converted_string = UTF16ToUTF8(string_view);
+ std::string converted_string = UTF16ToUTF8(string_view);
env->ReleaseStringChars(jstr, jchars);
return converted_string;
}
@@ -48,16 +48,9 @@ std::vector<std::string> JStringArrayToVector(JNIEnv* env, jobjectArray array)
return result;
}
-jobjectArray VectorToJStringArray(JNIEnv* env, std::vector<std::string> vector)
+jobjectArray VectorToJStringArray(JNIEnv* env, const std::vector<std::string>& vector)
{
- jobjectArray result = env->NewObjectArray(vector.size(), IDCache::GetStringClass(), nullptr);
- for (jsize i = 0; i < vector.size(); ++i)
- {
- jstring str = ToJString(env, vector[i]);
- env->SetObjectArrayElement(result, i, str);
- env->DeleteLocalRef(str);
- }
- return result;
+ return VectorToJObjectArray(env, vector, IDCache::GetStringClass(), ToJString);
}
bool IsPathAndroidContent(const std::string& uri)