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 d51cb6f5ad569587d8715f2e7d3d09d828e52f66..be0f0c04029b5bd08b0759881cd4d73a3e1884ea 100644 |
--- a/chrome/browser/media_galleries/linux/mtp_device_task_helper.cc |
+++ b/chrome/browser/media_galleries/linux/mtp_device_task_helper.cc |
@@ -214,9 +214,15 @@ void MTPDeviceTaskHelper::OnGetFileInfoToReadBytes( |
return HandleDeviceError(request.error_callback, |
base::File::FILE_ERROR_NOT_A_FILE); |
} else if (file_info.size < 0 || file_info.size > kuint32max || |
- request.offset >= file_info.size) { |
+ request.offset > file_info.size) { |
return HandleDeviceError(request.error_callback, |
base::File::FILE_ERROR_FAILED); |
+ } else if (request.offset == file_info.size) { |
+ content::BrowserThread::PostTask(content::BrowserThread::IO, |
+ FROM_HERE, |
+ base::Bind(request.success_callback, |
+ file_info, 0u)); |
+ return; |
} |
uint32 bytes_to_read = std::min( |