Summary: @public Adjust license headers throughout the project Reviewed By: SidharthGuglani Differential Revision: D13255691 fbshipit-source-id: 98be2aa372a94e7a54a65e3d64e5c6a436b18083
39 lines
808 B
C++
39 lines
808 B
C++
/**
|
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
*
|
|
* This source code is licensed under the MIT license found in the LICENSE
|
|
* file in the root directory of this source tree.
|
|
*/
|
|
#include <fb/fbjni/References.h>
|
|
|
|
namespace facebook {
|
|
namespace jni {
|
|
|
|
JniLocalScope::JniLocalScope(JNIEnv* env, jint capacity)
|
|
: env_(env) {
|
|
hasFrame_ = false;
|
|
auto pushResult = env->PushLocalFrame(capacity);
|
|
FACEBOOK_JNI_THROW_EXCEPTION_IF(pushResult < 0);
|
|
hasFrame_ = true;
|
|
}
|
|
|
|
JniLocalScope::~JniLocalScope() {
|
|
if (hasFrame_) {
|
|
env_->PopLocalFrame(nullptr);
|
|
}
|
|
}
|
|
|
|
namespace internal {
|
|
|
|
// Default implementation always returns true.
|
|
// Platform-specific sources can override this.
|
|
bool doesGetObjectRefTypeWork() __attribute__ ((weak));
|
|
bool doesGetObjectRefTypeWork() {
|
|
return true;
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
}
|