| Index: content/child/webblobregistry_impl.cc | 
| diff --git a/content/child/webblobregistry_impl.cc b/content/child/webblobregistry_impl.cc | 
| index 7b4ec421eb6308bedc5254c3fd5861abcb141a20..3bece44e01aa03acc0194b38793e89c0301c8590 100644 | 
| --- a/content/child/webblobregistry_impl.cc | 
| +++ b/content/child/webblobregistry_impl.cc | 
| @@ -50,6 +50,13 @@ void WebBlobRegistryImpl::registerBlobData( | 
| size_t i = 0; | 
| WebBlobData::Item data_item; | 
| while (data.itemAt(i++, data_item)) { | 
| +    // NOTE: data_item.length == -1 when we want to use the whole file.  This | 
| +    // only happens when we are creating a file object in Blink, and the file | 
| +    // object is the only item in the 'blob'.  If we use that file blob to | 
| +    // create another blob, it is sent here as a 'file' item and not a blob, | 
| +    // and the correct size is populated. | 
| +    // static_cast<uint64>(-1) == kuint64max, which is what DataElement uses | 
| +    // to specificy "use the whole file". | 
| if (data_item.length == 0) { | 
| continue; | 
| } | 
|  |