diff options
author | kevin <kevin.li@mapbox.com> | 2020-02-20 14:39:06 +0800 |
---|---|---|
committer | kevin <kevin.li@mapbox.com> | 2020-02-20 14:39:24 +0800 |
commit | bf56a0a173d42a21e6d58b0f2048dde131e56ca2 (patch) | |
tree | 89af46809b5453ff7a6bf10e056d41018c07f9a5 /platform/android/src/style/sources/source.cpp | |
parent | 0c9ff59718b76ddd77a5af2e69bf30886367ad9d (diff) | |
download | qtlocation-mapboxgl-bf56a0a173d42a21e6d58b0f2048dde131e56ca2.tar.gz |
handle nullopt in setter and getter
Diffstat (limited to 'platform/android/src/style/sources/source.cpp')
-rw-r--r-- | platform/android/src/style/sources/source.cpp | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/platform/android/src/style/sources/source.cpp b/platform/android/src/style/sources/source.cpp index 55b4c3c841..bbe8c82d3b 100644 --- a/platform/android/src/style/sources/source.cpp +++ b/platform/android/src/style/sources/source.cpp @@ -93,13 +93,21 @@ namespace android { return attribution ? jni::Make<jni::String>(env, attribution.value()) : jni::Make<jni::String>(env,""); } - void Source::setPrefetchZoomDelta(jni::JNIEnv&, jint delta) { - source.setPrefetchZoomDelta(delta); + void Source::setPrefetchZoomDelta(jni::JNIEnv& env, jni::String& delta) { + if (!delta) { + source.setPrefetchZoomDelta(nullopt); + } else { + const std::string deltaString = jni::Make<std::string>(env, delta); + source.setPrefetchZoomDelta(stoi(deltaString)); + } } - jint Source::getPrefetchZoomDelta(jni::JNIEnv&) { + jni::Local<jni::String> Source::getPrefetchZoomDelta(jni::JNIEnv& env) { auto delta = source.getPrefetchZoomDelta(); - return delta ? delta.value() : 0; + if (delta.has_value()) { + return jni::Make<jni::String>(env, std::to_string(delta.value())); + } + return jni::Make<jni::String>(env, ""); } void Source::addToMap(JNIEnv& env, const jni::Object<Source>& obj, mbgl::Map& map, AndroidRendererFrontend& frontend) { |