Index: content/child/webblobregistry_impl.cc |
diff --git a/content/child/webblobregistry_impl.cc b/content/child/webblobregistry_impl.cc |
index 6d272eec136bdc3f87168a11d86a4babe5c8143f..cd3b76a41bbe50749dc2a366c62865e6cceae841 100644 |
--- a/content/child/webblobregistry_impl.cc |
+++ b/content/child/webblobregistry_impl.cc |
@@ -57,11 +57,24 @@ void WebBlobRegistryImpl::registerBlobData( |
case WebBlobData::Item::TypeFile: |
if (data_item.length) { |
webkit_blob::BlobData::Item item; |
+#if defined(OS_ANDROID) |
+ GURL content_url = GURL(data_item.filePath); |
+ if (content_url.SchemeIsContent()) { |
+ item.SetToContentUrlRange( |
+ content_url, |
+ static_cast<uint64>(data_item.offset), |
+ static_cast<uint64>(data_item.length), |
+ base::Time::FromDoubleT(data_item.expectedModificationTime)); |
+ } else { |
+#endif |
item.SetToFilePathRange( |
base::FilePath::FromUTF16Unsafe(data_item.filePath), |
static_cast<uint64>(data_item.offset), |
static_cast<uint64>(data_item.length), |
base::Time::FromDoubleT(data_item.expectedModificationTime)); |
+#if defined(OS_ANDROID) |
+ } |
+#endif |
sender_->Send( |
new BlobHostMsg_AppendBlobDataItem(uuid_str, item)); |
} |