Skip to content

Commit

Permalink
[Android WebView] Fix calling ConvertJavastringToUTF8 with null string.
Browse files Browse the repository at this point in the history
Fix a log warning when calling ConvertJavaStringToUTF8 with a null
string. This is triggered by thew new AwSettings syncing code when
it reads a null user agent from the java side.

Review URL: https://chromiumcodereview.appspot.com/14543004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@197082 0039d316-1c4b-4281-b951-d872f2087c98
  • Loading branch information
benm@chromium.org committed Apr 29, 2013
1 parent ed8e8b0 commit f46c338
Showing 1 changed file with 7 additions and 3 deletions.
10 changes: 7 additions & 3 deletions android_webview/native/aw_settings.cc
Original file line number Diff line number Diff line change
Expand Up @@ -189,13 +189,17 @@ void AwSettings::UpdateUserAgent(JNIEnv* env, jobject obj) {

ScopedJavaLocalRef<jstring> str(env, static_cast<jstring>(
env->GetObjectField(obj, field_ids_->user_agent)));
std::string override = base::android::ConvertJavaStringToUTF8(str);
web_contents()->SetUserAgentOverride(override);
bool ua_overidden = str.obj() != NULL;

if (ua_overidden) {
std::string override = base::android::ConvertJavaStringToUTF8(str);
web_contents()->SetUserAgentOverride(override);
}

const content::NavigationController& controller =
web_contents()->GetController();
for (int i = 0; i < controller.GetEntryCount(); ++i)
controller.GetEntryAtIndex(i)->SetIsOverridingUserAgent(true);
controller.GetEntryAtIndex(i)->SetIsOverridingUserAgent(ua_overidden);
}

void AwSettings::UpdateWebkitPreferences(JNIEnv* env, jobject obj) {
Expand Down

0 comments on commit f46c338

Please sign in to comment.