From e96f89133c6b2e1b21e8465aeee580b353391985 Mon Sep 17 00:00:00 2001 From: Cheng Zhao Date: Thu, 24 Dec 2015 16:59:13 +0800 Subject: [PATCH 1/3] Reset whole headers when requestHeaders is set --- atom/browser/net/atom_network_delegate.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/atom/browser/net/atom_network_delegate.cc b/atom/browser/net/atom_network_delegate.cc index 228cb5828ec8..4f9bc835ed21 100644 --- a/atom/browser/net/atom_network_delegate.cc +++ b/atom/browser/net/atom_network_delegate.cc @@ -154,6 +154,7 @@ void ReadFromResponseObject(const base::DictionaryValue& response, net::HttpRequestHeaders* headers) { const base::DictionaryValue* dict; if (response.GetDictionary("requestHeaders", &dict)) { + headers->Clear(); for (base::DictionaryValue::Iterator it(*dict); !it.IsAtEnd(); it.Advance()) { From 2b5c91bbb5be928e60f88ec1d1b4603b6b1b971e Mon Sep 17 00:00:00 2001 From: Cheng Zhao Date: Thu, 24 Dec 2015 17:02:30 +0800 Subject: [PATCH 2/3] spec: onBeforeSendHeaders should reset the whole headers --- spec/api-web-request-spec.coffee | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/spec/api-web-request-spec.coffee b/spec/api-web-request-spec.coffee index a10ff3d1277c..5c78ef1d30a6 100644 --- a/spec/api-web-request-spec.coffee +++ b/spec/api-web-request-spec.coffee @@ -103,12 +103,23 @@ describe 'webRequest module', -> done() error: (xhr, errorType, error) -> done(errorType) + it 'resets the whole headers', (done) -> + requestHeaders = Test: 'header' + ses.webRequest.onBeforeSendHeaders (details, callback) -> + callback({requestHeaders}) + ses.webRequest.onSendHeaders (details) -> + assert.deepEqual details.requestHeaders, requestHeaders + done() + $.ajax + url: defaultURL + error: (xhr, errorType, error) -> done(errorType) + describe 'webRequest.onSendHeaders', -> afterEach -> ses.webRequest.onSendHeaders null it 'receives details object', (done) -> - ses.webRequest.onSendHeaders (details, callback) -> + ses.webRequest.onSendHeaders (details) -> assert.equal typeof details.requestHeaders, 'object' $.ajax url: defaultURL From c36ae86fabae571dbd886b43d445a8736d99c711 Mon Sep 17 00:00:00 2001 From: Cheng Zhao Date: Thu, 24 Dec 2015 17:08:32 +0800 Subject: [PATCH 3/3] spec: Increase timeout for window.open --- spec/chromium-spec.coffee | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spec/chromium-spec.coffee b/spec/chromium-spec.coffee index d19933393f4f..cc28f2f7ad47 100644 --- a/spec/chromium-spec.coffee +++ b/spec/chromium-spec.coffee @@ -85,7 +85,7 @@ describe 'chromium feature', -> w.loadURL url describe 'window.open', -> - @timeout 10000 + @timeout 20000 it 'returns a BrowserWindowProxy object', -> b = window.open 'about:blank', '', 'show=no'