| Index: chrome/browser/media_galleries/linux/mtp_device_task_helper.cc
|
| diff --git a/chrome/browser/media_galleries/linux/mtp_device_task_helper.cc b/chrome/browser/media_galleries/linux/mtp_device_task_helper.cc
|
| index a1546c747c32e48671d8b9c5d656744ca45ab27d..a1ca0fef70258e41d584924f6912af35f3f0274c 100644
|
| --- a/chrome/browser/media_galleries/linux/mtp_device_task_helper.cc
|
| +++ b/chrome/browser/media_galleries/linux/mtp_device_task_helper.cc
|
| @@ -109,20 +109,23 @@ void MTPDeviceTaskHelper::WriteDataIntoSnapshotFile(
|
| }
|
|
|
| void MTPDeviceTaskHelper::ReadBytes(
|
| - const MTPDeviceAsyncDelegate::ReadBytesRequest& request) {
|
| + const std::string& device_file_relative_path,
|
| + net::IOBuffer* buf, int64 offset, int buf_len,
|
| + const ReadBytesSuccessCallback& success_callback,
|
| + const ErrorCallback& error_callback) {
|
| DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI));
|
| if (device_handle_.empty()) {
|
| - return HandleDeviceError(request.error_callback,
|
| - base::File::FILE_ERROR_FAILED);
|
| + return HandleDeviceError(error_callback, base::File::FILE_ERROR_FAILED);
|
| }
|
|
|
| GetMediaTransferProtocolManager()->ReadFileChunkByPath(
|
| device_handle_,
|
| - request.device_file_relative_path,
|
| - base::checked_cast<uint32>(request.offset),
|
| - base::checked_cast<uint32>(request.buf_len),
|
| + device_file_relative_path,
|
| + base::checked_cast<uint32>(offset),
|
| + base::checked_cast<uint32>(buf_len),
|
| base::Bind(&MTPDeviceTaskHelper::OnDidReadBytes,
|
| - weak_ptr_factory_.GetWeakPtr(), request));
|
| + weak_ptr_factory_.GetWeakPtr(), make_scoped_refptr(buf),
|
| + buf_len, success_callback, error_callback));
|
| }
|
|
|
| void MTPDeviceTaskHelper::CloseStorage() const {
|
| @@ -196,22 +199,22 @@ void MTPDeviceTaskHelper::OnDidReadDirectoryByPath(
|
| }
|
|
|
| void MTPDeviceTaskHelper::OnDidReadBytes(
|
| - const MTPDeviceAsyncDelegate::ReadBytesRequest& request,
|
| + net::IOBuffer* buf, int buf_len,
|
| + const ReadBytesSuccessCallback& success_callback,
|
| + const ErrorCallback& error_callback,
|
| const std::string& data,
|
| bool error) const {
|
| DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI));
|
| if (error) {
|
| - return HandleDeviceError(request.error_callback,
|
| - base::File::FILE_ERROR_FAILED);
|
| + return HandleDeviceError(error_callback, base::File::FILE_ERROR_FAILED);
|
| }
|
|
|
| - CHECK_LE(base::checked_cast<int>(data.length()), request.buf_len);
|
| - std::copy(data.begin(), data.end(), request.buf->data());
|
| + CHECK_LE(base::checked_cast<int>(data.length()), buf_len);
|
| + std::copy(data.begin(), data.end(), buf->data());
|
|
|
| content::BrowserThread::PostTask(content::BrowserThread::IO,
|
| FROM_HERE,
|
| - base::Bind(request.success_callback,
|
| - data.length()));
|
| + base::Bind(success_callback, data.length()));
|
| }
|
|
|
| void MTPDeviceTaskHelper::HandleDeviceError(
|
|
|