Set offline=false, if network manager init failed. Fixes xulrunner, and seamonkey+thunderbird test. Bug 616520, r=bz, a=bz

--HG--
extra : rebase_source : cb14db93d0b983bbec4e87127124bd4119e583fd
This commit is contained in:
Ehsan Akhgari 2010-12-08 18:08:09 +01:00
parent bbc7eab938
commit ad0f825d4c
2 changed files with 14 additions and 5 deletions

View File

@ -268,8 +268,12 @@ nsIOService::Init()
#endif
mNetworkLinkService = do_GetService(NS_NETWORK_LINK_SERVICE_CONTRACTID);
if (!mNetworkLinkService)
if (!mNetworkLinkService) {
mManageOfflineStatus = PR_FALSE;
// We can't really determine if the machine has a usable network connection,
// so let's cross our fingers!
SetOffline(PR_FALSE);
}
if (mManageOfflineStatus)
TrackNetworkLinkStatusForOffline();

View File

@ -2,9 +2,14 @@ function run_test() {
var ioService = Components.classes["@mozilla.org/network/io-service;1"]
.getService(Components.interfaces.nsIIOService);
var linkService = Components.classes["@mozilla.org/network/network-link-service;1"]
.getService(Components.interfaces.nsINetworkLinkService);
try {
var linkService = Components.classes["@mozilla.org/network/network-link-service;1"]
.getService(Components.interfaces.nsINetworkLinkService);
// The offline status should depends on the link status
do_check_neq(ioService.offline, linkService.isLinkUp);
// The offline status should depends on the link status
do_check_neq(ioService.offline, linkService.isLinkUp);
} catch (e) {
// The network link service might not be available
do_check_eq(ioService.offline, false);
}
}