"System JS : ERROR resource://gre/components/NetworkGeolocationProvider.js:188 \n TypeError: xhr.response is null" on green debug Windows mochitest runs

RESOLVED FIXED in Firefox 24

Status

()

Core
Geolocation
RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: emorley, Assigned: emorley)

Tracking

(Blocks: 1 bug)

Trunk
mozilla25
x86
Windows 7
Points:
---

Firefox Tracking Flags

(firefox24 fixed, firefox25 fixed)

Details

(Whiteboard: [qa-])

Attachments

(1 attachment)

(Assignee)

Description

5 years ago
A recently deployed TBPL parser improvement has found a whole bunch of log spam in green debug mochitest-browser-chrome runs.

a) Should these be making the test run fail?
b) We should handle/fix, so we don't spam the annotated failure summary once this TBPL patchset is rolled out.

eg:
https://tbpl.mozilla.org/php/getParsedLog.php?id=25965008&tree=Mozilla-Inbound#error92

{
04:04:42     INFO -  35160 INFO TEST-PASS | /tests/dom/tests/mochitest/geolocation/test_cachedPosition.html | got TIMEOUT for watchPosition
04:04:42     INFO -  --DOMWINDOW == 97 (0EFECCD0) [serial = 10758] [outer = 00000000] [url = about:blank]
04:04:42     INFO -  --DOMWINDOW == 96 (0EFEE4E0) [serial = 10759] [outer = 00000000] [url = about:blank]
04:04:42     INFO -  --DOMWINDOW == 95 (0C9B38B0) [serial = 10783] [outer = 0C9B3FE8] [url = about:blank]
04:04:42     INFO -  --DOMWINDOW == 94 (0EFEBE60) [serial = 10771] [outer = 0EFEE748] [url = http://mochi.test:8888/tests/dom/tests/mochitest/general/file_showModalDialog.html?]
04:04:42     INFO -  35161 INFO TEST-PASS | /tests/dom/tests/mochitest/geolocation/test_cachedPosition.html | position should be equal to cached position
04:04:42     INFO -  35162 INFO TEST-PASS | /tests/dom/tests/mochitest/geolocation/test_cachedPosition.html | new position should be different from the cached
04:04:42     INFO -  35163 INFO TEST-END | /tests/dom/tests/mochitest/geolocation/test_cachedPosition.html | finished in 2295ms
04:04:42     INFO -  ++DOMWINDOW == 95 (0C9B33E0) [serial = 10799] [outer = 09A84B30]
04:04:42     INFO -  35164 INFO TEST-START | /tests/dom/tests/mochitest/geolocation/test_cancelCurrent.html
04:04:42     INFO -  ++DOMWINDOW == 96 (0C9B4988) [serial = 10800] [outer = 09A84B30]
04:04:42     INFO -  System JS : ERROR resource://gre/components/NetworkGeolocationProvider.js:188
04:04:42     INFO -                       TypeError: xhr.response is null
04:04:42     INFO -  System JS : ERROR resource://gre/components/NetworkGeolocationProvider.js:188
04:04:42     INFO -                       TypeError: xhr.response is null
04:04:42     INFO -  System JS : ERROR resource://gre/components/NetworkGeolocationProvider.js:188
04:04:42     INFO -                       TypeError: xhr.response is null
04:04:42     INFO -  System JS : ERROR resource://gre/components/NetworkGeolocationProvider.js:188
04:04:42     INFO -                       TypeError: xhr.response is null
04:04:42     INFO -  [Parent 1132] WARNING: No permission to access camera: file e:/builds/moz2_slave/m-in-w32-d-0000000000000000000/build/dom/camera/DOMCameraManager.cpp, line 84
04:04:42     INFO -  35165 INFO TEST-PASS | /tests/dom/tests/mochitest/geolocation/test_cancelCurrent.html | Ensure that the error was PERMISSION_DENIED
04:04:42     INFO -  35166 INFO TEST-END | /tests/dom/tests/mochitest/geolocation/test_cancelCurrent.html | finished in 169ms
}

http://mxr.mozilla.org/mozilla-central/source/dom/system/NetworkGeolocationProvider.js#188
{
171     // This is a background load
172   
173     xhr.open("POST", url, true);
174     xhr.setRequestHeader("Content-Type", "application/json; charset=UTF-8");
175     xhr.responseType = "json";
176     xhr.mozBackgroundRequest = true;
177     xhr.channel.loadFlags = Ci.nsIChannel.LOAD_ANONYMOUS;
178     xhr.onerror = function() {
179         LOG("onerror: " + xhr);
180     };
181 
182     xhr.onload = function() {  
183         LOG("gls returned status: " + xhr.status + " --> " +  JSON.stringify(xhr.response));
184         if (xhr.status != 200) {
185             return;
186         }
187 
188         if (!xhr.response.location) {
189             return;
190         }
191 
192         let newLocation = new WifiGeoPositionObject(xhr.response.location.lat,
193                                                     xhr.response.location.lng,
194                                                     xhr.response.accuracy);
195         
196         Cc["@mozilla.org/geolocation/service;1"].getService(Ci.nsIGeolocationUpdate)
197             .update(newLocation);
198     };
}
(Assignee)

Comment 1

5 years ago
(In reply to Ed Morley [:edmorley UTC+1] from comment #0)
> A recently deployed TBPL parser improvement has found a whole bunch of log
> spam in green debug mochitest-browser-chrome runs.

Sorry s/mochitest-browser-chrome/windows mochitest-3/ , bad copypasta.

Comment 2

5 years ago
Throwing an early return if xhr.response is null shouldn't harm anything.
(Assignee)

Comment 3

5 years ago
Created attachment 783832 [details] [diff] [review]
Null check xhr.response
Attachment #783832 - Flags: review?(josh)
(Assignee)

Updated

5 years ago
Assignee: nobody → emorley
Status: NEW → ASSIGNED

Updated

5 years ago
Attachment #783832 - Flags: review?(josh) → review+
https://hg.mozilla.org/releases/mozilla-aurora/rev/d8cd34988169
status-firefox24: --- → fixed
status-firefox25: --- → fixed
https://hg.mozilla.org/mozilla-central/rev/f345e073fd4a
Status: ASSIGNED → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla25
(Assignee)

Updated

5 years ago
No longer blocks: 892958
(Assignee)

Updated

5 years ago
Blocks: 910614
Assuming no QA needed here. Please remove [qa-] from the whiteboard and add the verifyme keyword if this needs QA.
Whiteboard: [qa-]
(Assignee)

Updated

5 years ago
Blocks: 920191
(Assignee)

Updated

5 years ago
No longer blocks: 910614
You need to log in before you can comment on or make changes to this bug.