| Index: content/browser/fileapi/browser_file_system_helper.h
|
| diff --git a/content/browser/fileapi/browser_file_system_helper.h b/content/browser/fileapi/browser_file_system_helper.h
|
| index c5702e73281631e88d65107a64ded88381796c68..b9679f9ea074e3b87c48b8a6c14d664976d3c1c8 100644
|
| --- a/content/browser/fileapi/browser_file_system_helper.h
|
| +++ b/content/browser/fileapi/browser_file_system_helper.h
|
| @@ -17,6 +17,8 @@ class FileSystemURL;
|
| namespace content {
|
|
|
| class BrowserContext;
|
| +class ChildProcessSecurityPolicyImpl;
|
| +struct DropData;
|
|
|
| // Helper method that returns FileSystemContext constructed for
|
| // the browser process.
|
| @@ -36,6 +38,24 @@ CONTENT_EXPORT void SyncGetPlatformPath(storage::FileSystemContext* context,
|
| int process_id,
|
| const GURL& path,
|
| base::FilePath* platform_path);
|
| +
|
| +// Make it possible for a |drop_data|'s resources to be read by |child_id|'s
|
| +// process -- by granting permissions, rewriting |drop_data|, or both.
|
| +//
|
| +// |drop_data| can include references to local files and filesystem files that
|
| +// were accessible to the child process that is the source of the drag and drop,
|
| +// but might not (yet) be accessible to the child process that is the target of
|
| +// the drop. PrepareDropDataForChildProcess makes sure that |child_id| has
|
| +// access to files referred to by |drop_data| - this method will 1) mutate
|
| +// |drop_data| as needed (e.g. to refer to files in a new isolated filesystem,
|
| +// rather than the original filesystem files) and 2) use |security_policy| to
|
| +// grant |child_id| appropriate file access.
|
| +CONTENT_EXPORT void PrepareDropDataForChildProcess(
|
| + DropData* drop_data,
|
| + ChildProcessSecurityPolicyImpl* security_policy,
|
| + int child_id,
|
| + const storage::FileSystemContext* file_system_context);
|
| +
|
| } // namespace content
|
|
|
| #endif // CONTENT_BROWSER_FILEAPI_BROWSER_FILE_SYSTEM_HELPER_H_
|
|
|