| Index: content/renderer/render_view_impl.cc
|
| ===================================================================
|
| --- content/renderer/render_view_impl.cc (revision 147918)
|
| +++ content/renderer/render_view_impl.cc (working copy)
|
| @@ -3278,8 +3278,27 @@
|
| referrer_policy = frame->document().referrerPolicy();
|
| }
|
|
|
| + // The request's extra data may indicate that we should set a custom user
|
| + // agent. This needs to be done here, after WebKit is through with setting the
|
| + // user agent on its own.
|
| + WebString custom_user_agent;
|
| + if (request.extraData()) {
|
| + webkit_glue::WebURLRequestExtraDataImpl* old_extra_data =
|
| + static_cast<webkit_glue::WebURLRequestExtraDataImpl*>(
|
| + request.extraData());
|
| + custom_user_agent = old_extra_data->custom_user_agent();
|
| +
|
| + if (!custom_user_agent.isNull()) {
|
| + if (custom_user_agent.isEmpty())
|
| + request.clearHTTPHeaderField("User-Agent");
|
| + else
|
| + request.setHTTPHeaderField("User-Agent", custom_user_agent);
|
| + }
|
| + }
|
| +
|
| request.setExtraData(
|
| new RequestExtraData(referrer_policy,
|
| + custom_user_agent,
|
| (frame == top_frame),
|
| frame->identifier(),
|
| frame->parent() == top_frame,
|
|
|