| Index: content/common/fileapi/webblob_messages.h
|
| diff --git a/content/common/fileapi/webblob_messages.h b/content/common/fileapi/webblob_messages.h
|
| index 3b22b7f588e9883626dce4866b72e73a0f3fcb53..f88b2a5e155f474148cb0babd148b894a2192403 100644
|
| --- a/content/common/fileapi/webblob_messages.h
|
| +++ b/content/common/fileapi/webblob_messages.h
|
| @@ -54,11 +54,18 @@ IPC_STRUCT_TRAITS_END()
|
| // * 'shortcut' transport the memory up to the IPC limit so the browser can use
|
| // it if it's not currently full.
|
| // See https://bit.ly/BlobStorageRefactor
|
| -IPC_MESSAGE_CONTROL4(BlobStorageMsg_RegisterBlob,
|
| - std::string /* uuid */,
|
| - std::string /* content_type */,
|
| - std::string /* content_disposition */,
|
| - std::vector<storage::DataElement> /* item_descriptions */)
|
| +//
|
| +// NOTE: This message is synchronous to ensure that the browser is aware of the
|
| +// UUID before the UUID is passed to another process. This protects against a
|
| +// race condition in which the browser could be asked about a UUID that doesn't
|
| +// yet exist from its perspective.
|
| +//
|
| +IPC_SYNC_MESSAGE_CONTROL4_0(
|
| + BlobStorageMsg_RegisterBlob,
|
| + std::string /* uuid */,
|
| + std::string /* content_type */,
|
| + std::string /* content_disposition */,
|
| + std::vector<storage::DataElement> /* item_descriptions */)
|
|
|
| IPC_MESSAGE_CONTROL4(
|
| BlobStorageMsg_RequestMemoryItem,
|
| @@ -80,9 +87,13 @@ IPC_MESSAGE_CONTROL1(BlobHostMsg_IncrementRefCount,
|
| std::string /* uuid */)
|
| IPC_MESSAGE_CONTROL1(BlobHostMsg_DecrementRefCount,
|
| std::string /* uuid */)
|
| -IPC_MESSAGE_CONTROL2(BlobHostMsg_RegisterPublicURL,
|
| - GURL,
|
| - std::string /* uuid */)
|
| +// NOTE: This message is synchronous to ensure that the browser is aware of the
|
| +// URL before the URL is passed to another process. This protects against a
|
| +// race condition in which the browser could be asked to load an URL that
|
| +// doesn't yet exist from its perspective.
|
| +IPC_SYNC_MESSAGE_CONTROL2_0(BlobHostMsg_RegisterPublicURL,
|
| + GURL,
|
| + std::string /* uuid */)
|
| IPC_MESSAGE_CONTROL1(BlobHostMsg_RevokePublicURL,
|
| GURL)
|
|
|
|
|