| Index: chrome/browser/android/chrome_web_contents_delegate_android.cc
|
| diff --git a/chrome/browser/android/chrome_web_contents_delegate_android.cc b/chrome/browser/android/chrome_web_contents_delegate_android.cc
|
| index 038a27467b9ea005d6f39a9f75e796aebcea2c0c..0372797ae584d71372a321b84118b90550ff47e9 100644
|
| --- a/chrome/browser/android/chrome_web_contents_delegate_android.cc
|
| +++ b/chrome/browser/android/chrome_web_contents_delegate_android.cc
|
| @@ -320,7 +320,8 @@ void ChromeWebContentsDelegateAndroid::AddNewContents(
|
|
|
| JNIEnv* env = AttachCurrentThread();
|
| ScopedJavaLocalRef<jobject> obj = GetJavaDelegate(env);
|
| - bool handled = false;
|
| + AddWebContentsResult add_result =
|
| + ADD_WEB_CONTENTS_RESULT_STOP_LOAD_AND_DELETE;
|
| if (!obj.is_null()) {
|
| ScopedJavaLocalRef<jobject> jsource;
|
| if (source)
|
| @@ -329,19 +330,21 @@ void ChromeWebContentsDelegateAndroid::AddNewContents(
|
| if (new_contents)
|
| jnew_contents = new_contents->GetJavaWebContents();
|
|
|
| - handled = Java_ChromeWebContentsDelegateAndroid_addNewContents(
|
| - env,
|
| - obj.obj(),
|
| - jsource.obj(),
|
| - jnew_contents.obj(),
|
| - static_cast<jint>(disposition),
|
| - NULL,
|
| - user_gesture);
|
| + add_result = static_cast<AddWebContentsResult>(
|
| + Java_ChromeWebContentsDelegateAndroid_addNewContents(
|
| + env,
|
| + obj.obj(),
|
| + jsource.obj(),
|
| + jnew_contents.obj(),
|
| + static_cast<jint>(disposition),
|
| + NULL,
|
| + user_gesture));
|
| }
|
|
|
| if (was_blocked)
|
| - *was_blocked = !handled;
|
| - if (!handled)
|
| + *was_blocked = !(add_result == ADD_WEB_CONTENTS_RESULT_PROCEED);
|
| +
|
| + if (add_result == ADD_WEB_CONTENTS_RESULT_STOP_LOAD_AND_DELETE)
|
| delete new_contents;
|
| }
|
|
|
|
|