Index: base/android/scoped_java_ref.cc |
diff --git a/base/android/scoped_java_ref.cc b/base/android/scoped_java_ref.cc |
index 21b466e958423f52b6e5f5657a51056e0a146fbc..a84d3471f77246794d28b7b8c650d317ca62a181 100644 |
--- a/base/android/scoped_java_ref.cc |
+++ b/base/android/scoped_java_ref.cc |
@@ -9,6 +9,11 @@ |
namespace base { |
namespace android { |
+namespace { |
+ |
+const int kDefaultLocalFrameCapacity = 512; |
+ |
+} // namespace |
JavaRef<jobject>::JavaRef() : obj_(NULL) {} |
@@ -69,5 +74,16 @@ jobject JavaRef<jobject>::ReleaseInternal() { |
return obj; |
} |
+ScopedJavaLocalFrame::ScopedJavaLocalFrame(JNIEnv* env) : env_(env) { |
+ env_->PushLocalFrame(kDefaultLocalFrameCapacity); |
+} |
+ |
+ScopedJavaLocalFrame::ScopedJavaLocalFrame(JNIEnv* env, int capacity) |
+ : env_(env) { |
+ env_->PushLocalFrame(capacity); |
no sievers
2014/04/04 20:32:11
Might want to DCHECK() that this returns 0, esp. i
reveman
2014/04/04 21:07:08
Done.
|
+} |
+ |
+ScopedJavaLocalFrame::~ScopedJavaLocalFrame() { env_->PopLocalFrame(NULL); } |
+ |
} // namespace android |
} // namespace base |