Index: chrome/browser/android/tab_state.cc |
diff --git a/chrome/browser/android/tab_state.cc b/chrome/browser/android/tab_state.cc |
index 11c090fd85436c50f9e14dedd6dd05857a6eb33f..f7266437c365ebfcb3f7ebb13de798b9370ca0a1 100644 |
--- a/chrome/browser/android/tab_state.cc |
+++ b/chrome/browser/android/tab_state.cc |
@@ -442,7 +442,7 @@ |
return web_contents.release(); |
} |
-ScopedJavaLocalRef<jobject> WebContentsState::RestoreContentsFromByteBuffer( |
+jobject WebContentsState::RestoreContentsFromByteBuffer( |
JNIEnv* env, |
jclass clazz, |
jobject state, |
@@ -457,10 +457,7 @@ |
saved_state_version, |
initially_hidden); |
- if (web_contents) |
- return web_contents->GetJavaWebContents(); |
- else |
- return ScopedJavaLocalRef<jobject>(); |
+ return web_contents ? web_contents->GetJavaWebContents().Release() : nullptr; |
} |
ScopedJavaLocalRef<jobject> |
@@ -501,12 +498,11 @@ |
free(data); |
} |
-static ScopedJavaLocalRef<jobject> RestoreContentsFromByteBuffer( |
- JNIEnv* env, |
- jclass clazz, |
- jobject state, |
- jint saved_state_version, |
- jboolean initially_hidden) { |
+static jobject RestoreContentsFromByteBuffer(JNIEnv* env, |
+ jclass clazz, |
+ jobject state, |
+ jint saved_state_version, |
+ jboolean initially_hidden) { |
return WebContentsState::RestoreContentsFromByteBuffer(env, |
clazz, |
state, |
@@ -514,14 +510,14 @@ |
initially_hidden); |
} |
-static ScopedJavaLocalRef<jobject> GetContentsStateAsByteBuffer(JNIEnv* env, |
- jclass clazz, |
- jobject jtab) { |
+static jobject GetContentsStateAsByteBuffer( |
+ JNIEnv* env, jclass clazz, jobject jtab) { |
TabAndroid* tab_android = TabAndroid::GetNativeTab(env, jtab); |
- return WebContentsState::GetContentsStateAsByteBuffer(env, tab_android); |
-} |
- |
-static ScopedJavaLocalRef<jobject> CreateSingleNavigationStateAsByteBuffer( |
+ return WebContentsState::GetContentsStateAsByteBuffer( |
+ env, tab_android).Release(); |
+} |
+ |
+static jobject CreateSingleNavigationStateAsByteBuffer( |
JNIEnv* env, |
jclass clazz, |
jstring url, |
@@ -529,34 +525,32 @@ |
jint referrer_policy, |
jboolean is_off_the_record) { |
return WebContentsState::CreateSingleNavigationStateAsByteBuffer( |
- env, url, referrer_url, referrer_policy, is_off_the_record); |
-} |
- |
-static ScopedJavaLocalRef<jstring> GetDisplayTitleFromByteBuffer( |
- JNIEnv* env, |
- jclass clazz, |
- jobject state, |
- jint saved_state_version) { |
+ env, url, referrer_url, referrer_policy, is_off_the_record).Release(); |
+} |
+ |
+static jstring GetDisplayTitleFromByteBuffer(JNIEnv* env, |
+ jclass clazz, |
+ jobject state, |
+ jint saved_state_version) { |
void* data = env->GetDirectBufferAddress(state); |
int size = env->GetDirectBufferCapacity(state); |
ScopedJavaLocalRef<jstring> result = |
WebContentsState::GetDisplayTitleFromByteBuffer( |
env, data, size, saved_state_version); |
- return result; |
-} |
- |
-static ScopedJavaLocalRef<jstring> GetVirtualUrlFromByteBuffer( |
- JNIEnv* env, |
- jclass clazz, |
- jobject state, |
- jint saved_state_version) { |
+ return result.Release(); |
+} |
+ |
+static jstring GetVirtualUrlFromByteBuffer(JNIEnv* env, |
+ jclass clazz, |
+ jobject state, |
+ jint saved_state_version) { |
void* data = env->GetDirectBufferAddress(state); |
int size = env->GetDirectBufferCapacity(state); |
ScopedJavaLocalRef<jstring> result = |
WebContentsState::GetVirtualUrlFromByteBuffer( |
env, data, size, saved_state_version); |
- return result; |
+ return result.Release(); |
} |
// Creates a historical tab entry from the serialized tab contents contained |
@@ -565,10 +559,13 @@ |
jclass clazz, |
jobject state, |
jint saved_state_version) { |
- scoped_ptr<WebContents> web_contents(WebContents::FromJavaWebContents( |
- WebContentsState::RestoreContentsFromByteBuffer(env, clazz, state, |
- saved_state_version, true) |
- .obj())); |
+ scoped_ptr<WebContents> web_contents( |
+ WebContents::FromJavaWebContents( |
+ WebContentsState::RestoreContentsFromByteBuffer(env, |
+ clazz, |
+ state, |
+ saved_state_version, |
+ true))); |
if (web_contents.get()) |
TabAndroid::CreateHistoricalTabFromContents(web_contents.get()); |
} |