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() {}
void URLRequestFetchJob::Start() {
net::URLFetcher* fetcher = net::URLFetcher::Create(url_,
net::URLFetcher::GET,
this);
fetcher_.reset(net::URLFetcher::Create(url_, net::URLFetcher::GET, this));
auto context = AtomBrowserContext::Get()->url_request_context_getter();
fetcher->SetRequestContext(context);
fetcher->SaveResponseWithWriter(scoped_ptr<net::URLFetcherResponseWriter>(
fetcher_->SetRequestContext(context);
fetcher_->SaveResponseWithWriter(scoped_ptr<net::URLFetcherResponseWriter>(
this));
fetcher->Start();
fetcher_->Start();
}
void URLRequestFetchJob::Kill() {

View file

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