Index: chrome_browser_proxy_resolver.cc |
diff --git a/chrome_browser_proxy_resolver.cc b/chrome_browser_proxy_resolver.cc |
index a481f4fbb0d1d9ef68109ab0333320d62d8db126..33dcadc8d147024c011d8e90895ab670aabff69c 100644 |
--- a/chrome_browser_proxy_resolver.cc |
+++ b/chrome_browser_proxy_resolver.cc |
@@ -128,8 +128,8 @@ bool ChromeBrowserProxyResolver::GetProxiesForUrl(const string& url, |
ProxiesResolvedFn callback, |
void* data) { |
GError* error = NULL; |
- TEST_AND_RETURN_FALSE(proxy_); |
- if (!dbus_->ProxyCall( |
+ guint timeout = timeout_; |
+ if (!proxy_ || !dbus_->ProxyCall( |
proxy_, |
kLibCrosServiceResolveNetworkProxyMethodName, |
&error, |
@@ -138,14 +138,15 @@ bool ChromeBrowserProxyResolver::GetProxiesForUrl(const string& url, |
G_TYPE_STRING, kLibCrosProxyResolveName, |
G_TYPE_INVALID, G_TYPE_INVALID)) { |
LOG(ERROR) << "dbus_g_proxy_call failed: " |
petkov
2011/03/14 19:58:10
Change to WARNING?
|
- << utils::GetGErrorMessage(error); |
- return false; |
+ << utils::GetGErrorMessage(error) |
+ << " Continuing with no proxy."; |
+ timeout = 0; |
} |
callbacks_.insert(make_pair(url, make_pair(callback, data))); |
Closure* closure = NewCallback(this, |
&ChromeBrowserProxyResolver::HandleTimeout, |
url); |
- GSource* timer = g_timeout_source_new_seconds(timeout_); |
+ GSource* timer = g_timeout_source_new_seconds(timeout); |
g_source_set_callback(timer, &utils::GlibRunClosure, closure, NULL); |
g_source_attach(timer, NULL); |
timers_.insert(make_pair(url, timer)); |