| Index: android_webview/java/src/org/chromium/android_webview/AwContents.java
|
| diff --git a/android_webview/java/src/org/chromium/android_webview/AwContents.java b/android_webview/java/src/org/chromium/android_webview/AwContents.java
|
| index bb4222c87c273f6e8a5a8a32fc91e7805fdd5e50..9f9317f99923e9febb70cca1fc7ce752e9743660 100644
|
| --- a/android_webview/java/src/org/chromium/android_webview/AwContents.java
|
| +++ b/android_webview/java/src/org/chromium/android_webview/AwContents.java
|
| @@ -57,6 +57,7 @@ import java.lang.annotation.Annotation;
|
| import java.net.MalformedURLException;
|
| import java.net.URL;
|
| import java.util.ArrayList;
|
| +import java.util.HashMap;
|
| import java.util.List;
|
| import java.util.concurrent.Callable;
|
|
|
| @@ -910,6 +911,12 @@ public class AwContents {
|
| // every time the user agent in AwSettings is modified.
|
| params.setOverrideUserAgent(LoadUrlParams.UA_OVERRIDE_TRUE);
|
|
|
| + // We don't pass extra headers to the content layer, as WebViewClassic
|
| + // was adding them in a very narrow set of conditions. See http://crbug.com/306873
|
| + if (mNativeAwContents != 0) nativeSetExtraHeadersForUrl(
|
| + mNativeAwContents, params.getUrl(), params.getExtraHttpRequestHeadersString());
|
| + params.setExtraHeaders(new HashMap<String, String>());
|
| +
|
| mContentViewCore.loadUrl(params);
|
|
|
| suppressInterceptionForThisNavigation();
|
| @@ -2083,6 +2090,8 @@ public class AwContents {
|
| private native int nativeGetAwDrawGLViewContext(long nativeAwContents);
|
| private native long nativeCapturePicture(long nativeAwContents, int width, int height);
|
| private native void nativeEnableOnNewPicture(long nativeAwContents, boolean enabled);
|
| + private native void nativeSetExtraHeadersForUrl(long nativeAwContents,
|
| + String url, String extraHeaders);
|
|
|
| private native void nativeInvokeGeolocationCallback(
|
| long nativeAwContents, boolean value, String requestingFrame);
|
|
|