diff options
| author | Sintendo <3380580+Sintendo@users.noreply.github.com> | 2025-12-24 10:14:02 +0100 |
|---|---|---|
| committer | Sintendo <3380580+Sintendo@users.noreply.github.com> | 2026-01-24 16:50:10 +0100 |
| commit | f2e1c71803b953c9adb9528c168cbbde23b3b30a (patch) | |
| tree | 276c17d2bbfaebc6dc2193e1f6e3a6f387eb0787 /Source/Android/jni/AndroidCommon/AndroidCommon.cpp | |
| parent | 3221e982d371afd39793628bf8973f3cc951db35 (diff) | |
Common/FileSearch: Refactor DoFileSearch
Diffstat (limited to 'Source/Android/jni/AndroidCommon/AndroidCommon.cpp')
| -rw-r--r-- | Source/Android/jni/AndroidCommon/AndroidCommon.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/Source/Android/jni/AndroidCommon/AndroidCommon.cpp b/Source/Android/jni/AndroidCommon/AndroidCommon.cpp index a976d573b8..029b64aa36 100644 --- a/Source/Android/jni/AndroidCommon/AndroidCommon.cpp +++ b/Source/Android/jni/AndroidCommon/AndroidCommon.cpp @@ -5,6 +5,7 @@ #include <algorithm> #include <ios> +#include <span> #include <string> #include <string_view> #include <vector> @@ -49,9 +50,13 @@ std::vector<std::string> JStringArrayToVector(JNIEnv* env, jobjectArray array) return result; } -jobjectArray VectorToJStringArray(JNIEnv* env, const std::vector<std::string>& vector) +jobjectArray SpanToJStringArray(JNIEnv* env, std::span<const std::string_view> span) { - return VectorToJObjectArray(env, vector, IDCache::GetStringClass(), ToJString); + return SpanToJObjectArray(env, span, IDCache::GetStringClass(), ToJString); +} +jobjectArray SpanToJStringArray(JNIEnv* env, std::span<const std::string> span) +{ + return SpanToJObjectArray(env, span, IDCache::GetStringClass(), ToJString); } bool IsPathAndroidContent(std::string_view uri) @@ -193,13 +198,13 @@ std::vector<std::string> GetAndroidContentChildNames(std::string_view uri) } std::vector<std::string> DoFileSearchAndroidContent(std::string_view directory, - const std::vector<std::string>& extensions, + std::span<const std::string_view> extensions, bool recursive) { JNIEnv* env = IDCache::GetEnvForThread(); jstring j_directory = ToJString(env, directory); - jobjectArray j_extensions = VectorToJStringArray(env, extensions); + jobjectArray j_extensions = SpanToJStringArray(env, extensions); jobjectArray j_result = reinterpret_cast<jobjectArray>(env->CallStaticObjectMethod( IDCache::GetContentHandlerClass(), IDCache::GetContentHandlerDoFileSearch(), j_directory, |
