Don't leak URLFetcher

This commit is contained in:
Cheng Zhao 2015-06-16 17:08:53 +08:00
parent a5e2f8e79e
commit 44f8bfc550
2 changed files with 5 additions and 6 deletions

View file

@ -24,14 +24,12 @@ URLRequestFetchJob::URLRequestFetchJob(
URLRequestFetchJob::~URLRequestFetchJob() {} URLRequestFetchJob::~URLRequestFetchJob() {}
void URLRequestFetchJob::Start() { void URLRequestFetchJob::Start() {
net::URLFetcher* fetcher = net::URLFetcher::Create(url_, fetcher_.reset(net::URLFetcher::Create(url_, net::URLFetcher::GET, this));
net::URLFetcher::GET,
this);
auto context = AtomBrowserContext::Get()->url_request_context_getter(); auto context = AtomBrowserContext::Get()->url_request_context_getter();
fetcher->SetRequestContext(context); fetcher_->SetRequestContext(context);
fetcher->SaveResponseWithWriter(scoped_ptr<net::URLFetcherResponseWriter>( fetcher_->SaveResponseWithWriter(scoped_ptr<net::URLFetcherResponseWriter>(
this)); this));
fetcher->Start(); fetcher_->Start();
} }
void URLRequestFetchJob::Kill() { void URLRequestFetchJob::Kill() {

View file

@ -45,6 +45,7 @@ class URLRequestFetchJob : public net::URLRequestJob,
private: private:
GURL url_; GURL url_;
scoped_ptr<net::URLFetcher> fetcher_;
scoped_refptr<net::DrainableIOBuffer> buffer_; scoped_refptr<net::DrainableIOBuffer> buffer_;
base::WeakPtrFactory<URLRequestFetchJob> weak_ptr_factory_; base::WeakPtrFactory<URLRequestFetchJob> weak_ptr_factory_;