| Index: chrome/browser/extensions/chrome_url_request_util.cc
|
| diff --git a/chrome/browser/extensions/chrome_url_request_util.cc b/chrome/browser/extensions/chrome_url_request_util.cc
|
| index c89350aa3d05dbd19cc41baa9980db278d61b5b7..39d34ee6eb6626c04637c86cc53de2252a2ebc18 100644
|
| --- a/chrome/browser/extensions/chrome_url_request_util.cc
|
| +++ b/chrome/browser/extensions/chrome_url_request_util.cc
|
| @@ -59,10 +59,10 @@ class URLRequestResourceBundleJob : public net::URLRequestSimpleJob {
|
| }
|
|
|
| // Overridden from URLRequestSimpleJob:
|
| - int GetData(std::string* mime_type,
|
| - std::string* charset,
|
| - std::string* data,
|
| - const net::CompletionCallback& callback) const override {
|
| + int GetStringPieceData(std::string* mime_type,
|
| + std::string* charset,
|
| + base::StringPiece* data,
|
| + const net::CompletionCallback& callback) override {
|
| // TODO(vadimt): Remove ScopedTracker below once crbug.com/422489 is fixed.
|
| tracked_objects::ScopedTracker tracking_profile(
|
| FROM_HERE_WITH_EXPLICIT_FUNCTION(
|
| @@ -83,7 +83,7 @@ class URLRequestResourceBundleJob : public net::URLRequestSimpleJob {
|
| FROM_HERE_WITH_EXPLICIT_FUNCTION(
|
| "422489 URLRequestResourceBundleJob::GetData 1.5"));
|
|
|
| - *data = resource_as_string_piece.as_string();
|
| + *data = resource_as_string_piece;
|
|
|
| // TODO(vadimt): Remove ScopedTracker below once crbug.com/422489 is fixed.
|
| tracked_objects::ScopedTracker tracking_profile2(
|
| @@ -103,18 +103,12 @@ class URLRequestResourceBundleJob : public net::URLRequestSimpleJob {
|
|
|
| std::string* read_mime_type = new std::string;
|
| bool posted = base::PostTaskAndReplyWithResult(
|
| - BrowserThread::GetBlockingPool(),
|
| - FROM_HERE,
|
| - base::Bind(&net::GetMimeTypeFromFile,
|
| - filename_,
|
| + BrowserThread::GetBlockingPool(), FROM_HERE,
|
| + base::Bind(&net::GetMimeTypeFromFile, filename_,
|
| base::Unretained(read_mime_type)),
|
| base::Bind(&URLRequestResourceBundleJob::OnMimeTypeRead,
|
| - weak_factory_.GetWeakPtr(),
|
| - mime_type,
|
| - charset,
|
| - data,
|
| - base::Owned(read_mime_type),
|
| - callback));
|
| + weak_factory_.GetWeakPtr(), mime_type, charset, *data,
|
| + base::Owned(read_mime_type), callback));
|
| DCHECK(posted);
|
|
|
| return net::ERR_IO_PENDING;
|
| @@ -129,7 +123,7 @@ class URLRequestResourceBundleJob : public net::URLRequestSimpleJob {
|
|
|
| void OnMimeTypeRead(std::string* out_mime_type,
|
| std::string* charset,
|
| - std::string* data,
|
| + base::StringPiece data,
|
| std::string* read_mime_type,
|
| const net::CompletionCallback& callback,
|
| bool read_result) {
|
| @@ -137,7 +131,7 @@ class URLRequestResourceBundleJob : public net::URLRequestSimpleJob {
|
| if (StartsWithASCII(*read_mime_type, "text/", false)) {
|
| // All of our HTML files should be UTF-8 and for other resource types
|
| // (like images), charset doesn't matter.
|
| - DCHECK(base::IsStringUTF8(*data));
|
| + DCHECK(base::IsStringUTF8(data));
|
| *charset = "utf-8";
|
| }
|
| int result = read_result ? net::OK : net::ERR_INVALID_URL;
|
|
|