| Index: net/proxy/proxy_service.cc
|
| diff --git a/net/proxy/proxy_service.cc b/net/proxy/proxy_service.cc
|
| index 35ccfbd4daf5237213ced96187687bf24010d59b..b210bd87dc94aea0ca9f3c152e780551e9e6007e 100644
|
| --- a/net/proxy/proxy_service.cc
|
| +++ b/net/proxy/proxy_service.cc
|
| @@ -167,6 +167,7 @@ class ProxyConfigServiceDirect : public ProxyConfigService {
|
| virtual ConfigAvailability GetLatestProxyConfig(ProxyConfig* config)
|
| OVERRIDE {
|
| *config = ProxyConfig::CreateDirect();
|
| + config->set_source(PROXY_CONFIG_SOURCE_UNKNOWN);
|
| return CONFIG_VALID;
|
| }
|
| };
|
| @@ -802,6 +803,7 @@ class ProxyService::PacRequest
|
| url_(url),
|
| resolve_job_(NULL),
|
| config_id_(ProxyConfig::kInvalidConfigID),
|
| + config_source_(PROXY_CONFIG_SOURCE_UNKNOWN),
|
| net_log_(net_log) {
|
| DCHECK(!user_callback.is_null());
|
| }
|
| @@ -814,6 +816,7 @@ class ProxyService::PacRequest
|
| DCHECK(service_->config_.is_valid());
|
|
|
| config_id_ = service_->config_.id();
|
| + config_source_ = service_->config_.source();
|
|
|
| return resolver()->GetProxyForURL(
|
| url_, results_,
|
| @@ -869,10 +872,13 @@ class ProxyService::PacRequest
|
| // Make a note in the results which configuration was in use at the
|
| // time of the resolve.
|
| results_->config_id_ = config_id_;
|
| + results_->config_source_ = config_source_;
|
| + results_->did_use_pac_script_ = true;
|
|
|
| // Reset the state associated with in-progress-resolve.
|
| resolve_job_ = NULL;
|
| config_id_ = ProxyConfig::kInvalidConfigID;
|
| + config_source_ = PROXY_CONFIG_SOURCE_UNKNOWN;
|
|
|
| return service_->DidFinishResolvingProxy(results_, result_code, net_log_);
|
| }
|
| @@ -914,6 +920,7 @@ class ProxyService::PacRequest
|
| GURL url_;
|
| ProxyResolver::RequestHandle resolve_job_;
|
| ProxyConfig::ID config_id_; // The config id when the resolve was started.
|
| + ProxyConfigSource config_source_; // The source of proxy settings.
|
| BoundNetLog net_log_;
|
| };
|
|
|
| @@ -1116,6 +1123,7 @@ int ProxyService::TryToCompleteSynchronously(const GURL& url,
|
|
|
| // Use the manual proxy settings.
|
| config_.proxy_rules().Apply(url, result);
|
| + result->config_source_ = config_.source();
|
| result->config_id_ = config_.id();
|
| return OK;
|
| }
|
| @@ -1237,6 +1245,7 @@ void ProxyService::OnInitProxyResolverComplete(int result) {
|
| // TODO(eroman): Make this ID unique in the case where configuration changed
|
| // due to ProxyScriptDeciderPoller.
|
| config_.set_id(fetched_config_.id());
|
| + config_.set_source(fetched_config_.source());
|
|
|
| // Resume any requests which we had to defer until the PAC script was
|
| // downloaded.
|
|
|