| Index: trunk/src/ppapi/thunk/ppb_file_ref_api.h
|
| ===================================================================
|
| --- trunk/src/ppapi/thunk/ppb_file_ref_api.h (revision 220164)
|
| +++ trunk/src/ppapi/thunk/ppb_file_ref_api.h (working copy)
|
| @@ -10,12 +10,11 @@
|
| #include "base/memory/linked_ptr.h"
|
| #include "base/memory/ref_counted.h"
|
| #include "ppapi/c/ppb_file_ref.h"
|
| -#include "ppapi/shared_impl/file_ref_create_info.h"
|
| #include "ppapi/thunk/ppapi_thunk_export.h"
|
|
|
| namespace ppapi {
|
|
|
| -struct FileRefCreateInfo;
|
| +struct PPB_FileRef_CreateInfo;
|
| class TrackedCallback;
|
|
|
| namespace thunk {
|
| @@ -41,10 +40,25 @@
|
| virtual int32_t ReadDirectoryEntries(
|
| const PP_ArrayOutput& output,
|
| scoped_refptr<TrackedCallback> callback) = 0;
|
| + // We define variants of Query and ReadDirectoryEntries because
|
| + // 1. we need to take linked_ptr instead of raw pointers to avoid
|
| + // use-after-free, and 2. we don't use PP_ArrayOutput for the
|
| + // communication between renderers and the browser in
|
| + // ReadDirectoryEntries. The *InHost functions must not be called in
|
| + // plugins, and Query and ReadDirectoryEntries must not be called in
|
| + // renderers.
|
| + // TODO(hamaji): These functions must be removed when we move
|
| + // FileRef to the new resource design. http://crbug.com/225441
|
| + virtual int32_t QueryInHost(linked_ptr<PP_FileInfo> info,
|
| + scoped_refptr<TrackedCallback> callback) = 0;
|
| + virtual int32_t ReadDirectoryEntriesInHost(
|
| + linked_ptr<std::vector<ppapi::PPB_FileRef_CreateInfo> > files,
|
| + linked_ptr<std::vector<PP_FileType> > file_types,
|
| + scoped_refptr<TrackedCallback> callback) = 0;
|
|
|
| // Internal function for use in proxying. Returns the internal CreateInfo
|
| // (the contained resource does not carry a ref on behalf of the caller).
|
| - virtual const FileRefCreateInfo& GetCreateInfo() const = 0;
|
| + virtual const PPB_FileRef_CreateInfo& GetCreateInfo() const = 0;
|
|
|
| // Private API
|
| virtual PP_Var GetAbsolutePath() = 0;
|
|
|