diff --git a/ReactAndroid/src/main/jni/react/jni/ReadableNativeMap.cpp b/ReactAndroid/src/main/jni/react/jni/ReadableNativeMap.cpp index c1ad15082be..61f686c4404 100644 --- a/ReactAndroid/src/main/jni/react/jni/ReadableNativeMap.cpp +++ b/ReactAndroid/src/main/jni/react/jni/ReadableNativeMap.cpp @@ -64,14 +64,15 @@ local_ref> ReadableNativeMap::importKeys() { return JArrayClass::newArray(0); } auto pairs = map_.items(); - for (auto &pair : pairs) { - keys_.value().push_back(pair.first.asString()); - } - jint size = keys_.value().size(); + jint size = map_.size(); auto jarray = JArrayClass::newArray(size); - for (jint ii = 0; ii < size; ii++) { - (*jarray)[ii] = make_jstring(keys_.value()[ii].getString()); + jint i = 0; + for (auto &pair : pairs) { + auto value = pair.first.asString(); + keys_.value().push_back(value); + (*jarray)[i++] = make_jstring(value); } + return jarray; }