From the spec: "If a PositionOptions parameter was present, and its timeout attribute was defined to a non-negative value, assign this value to an internal timeout variable. If timeout was defined to a negative value, set the internal timeout variable to 0. If timeout was not specified, set the internal timeout variable to Infinity." You'll want to update the code in nsGeolocation::SetTimeoutTimer in nsGeolocation.cpp.
I couldn't find nsGeolocation::SetTimeoutTimer in nsGeolocation.cpp. Do you mean nsGeolocationRequest::SetTimeoutTimer?
Yes, I did. Sorry!
Created attachment 611459 [details] [diff] [review] first patch any comment?:)
Comment on attachment 611459 [details] [diff] [review] first patch Review of attachment 611459 [details] [diff] [review]: ----------------------------------------------------------------- Great; thanks!
I'll check this patch in with the correct extra information (your name/email, commit message, etc.), but in future could you follow the steps at https://developer.mozilla.org/en/Creating_a_patch_that_can_be_checked_in to make checking your patches in easier?
Okay next time I'll do that! Thanks for the guidance:)
Sorry, I had to back out this change: https://hg.mozilla.org/integration/mozilla-inbound/rev/bf983daba97d because it caused some timeouts in automated tests. Here are some test logs: https://tbpl.mozilla.org/php/getParsedLog.php?id=10567251&tree=Mozilla-Inbound The test failures will need to be fixed in order for this patch to land again. Let us know if you need any help figuring out how to fix the timeouts. For some information about these tests and how to run them, see: https://developer.mozilla.org/en/Mochitest
I need some help figuring how to fix the timeouts. It seems like in test_shutdown, timeout is set to 100, so the behavior of the program with and without patch should be the same since the condition timeout < 10 isn't satisfied. I'm not sure why the patch proposed cause the geolocation provider to time out. Could you please give me some hints on how to fix this? Thanks!
My theory is that NS_SUCCEEDED(mOptions->GetTimeout(&timeout)) succeeds, and timeout contains 0. We previously skipped the timer if this was the case; let's retain an extra check for the if condition of |timeout != 0|, which should leave these tests unaffected.
Veeraya, if you upload a patch that addresses comment 10, I'll run it through our testing server.
Created attachment 614719 [details] [diff] [review] patch Edited according to the comment above. I haven't been able to reproduce the failed tests locally though. Not too sure why. Please help run the patch on the testing server. Thank you!:)
Autoland Patchset: Patches: 614719 Branch: mozilla-central => try Insufficient permissions to push to try.
Autoland Patchset: Patches: 614719 Branch: mozilla-central => try Destination: http://hg.mozilla.org/try/pushloghtml?changeset=4d6bb322476e Try run started, revision 4d6bb322476e. To cancel or monitor the job, see: https://tbpl.mozilla.org/?tree=Try&rev=4d6bb322476e
Try run for 4d6bb322476e is complete. Detailed breakdown of the results available here: https://tbpl.mozilla.org/?tree=Try&rev=4d6bb322476e Results (out of 121 total builds): exception: 1 success: 107 warnings: 13 Builds (or logs if builds failed) available at: http://email@example.com