Index: ppapi/proxy/file_system_resource.cc |
diff --git a/ppapi/proxy/file_system_resource.cc b/ppapi/proxy/file_system_resource.cc |
index af1928b4c66c73ee486a46ce4b861ec8f23e211d..d5458d0184e920fe73bcce8676e31db98aadeac1 100644 |
--- a/ppapi/proxy/file_system_resource.cc |
+++ b/ppapi/proxy/file_system_resource.cc |
@@ -94,6 +94,24 @@ int32_t FileSystemResource::InitIsolatedFileSystem( |
return PP_OK_COMPLETIONPENDING; |
} |
+int32_t FileSystemResource::OpenPluginPrivateFileSystem( |
+ const base::Callback<void(int32_t)>& callback) { |
+ // This call is mutually exclusive with Open() above, so we can reuse the |
+ // called_open state. |
+ DCHECK(type_ == PP_FILESYSTEMTYPE_ISOLATED); |
+ if (called_open_) |
+ return PP_ERROR_FAILED; |
+ called_open_ = true; |
+ |
+ Call<PpapiPluginMsg_FileSystem_OpenPluginPrivateFileSystemReply>(BROWSER, |
+ PpapiHostMsg_FileSystem_OpenPluginPrivateFileSystem(), |
+ base::Bind(&FileSystemResource::OpenPluginPrivateFileSystemComplete, |
+ this, |
+ callback)); |
+ |
+ return PP_OK_COMPLETIONPENDING; |
+} |
+ |
void FileSystemResource::OpenComplete( |
scoped_refptr<TrackedCallback> callback, |
const ResourceMessageReplyParams& params) { |
@@ -112,5 +130,22 @@ void FileSystemResource::InitIsolatedFileSystemComplete( |
callback.Run(params.result()); |
} |
+void FileSystemResource::OpenPluginPrivateFileSystemComplete( |
+ const base::Callback<void(int32_t)>& callback, |
+ const ResourceMessageReplyParams& params, |
+ const std::string& fsid) { |
+ Call<PpapiPluginMsg_FileSystem_InitPluginPrivateFileSystemReply>(RENDERER, |
teravest
2013/10/29 17:14:11
Why doesn't this call go to the BROWSER as well?
|
+ PpapiHostMsg_FileSystem_InitPluginPrivateFileSystem(fsid), |
+ base::Bind(&FileSystemResource::InitPluginPrivateFileSystemComplete, |
+ this, |
+ callback)); |
+} |
+ |
+void FileSystemResource::InitPluginPrivateFileSystemComplete( |
+ const base::Callback<void(int32_t)>& callback, |
+ const ResourceMessageReplyParams& params) { |
+ callback.Run(params.result()); |
+} |
+ |
} // namespace proxy |
} // namespace ppapi |