| Index: ppapi/thunk/ppb_file_ref_api.h
|
| diff --git a/ppapi/thunk/ppb_file_ref_api.h b/ppapi/thunk/ppb_file_ref_api.h
|
| index 4ec5314d122892113d4169d544016cf5d69143d5..ba92b63fcc44664ad8bc447283e424094f15efe0 100644
|
| --- a/ppapi/thunk/ppb_file_ref_api.h
|
| +++ b/ppapi/thunk/ppb_file_ref_api.h
|
| @@ -5,6 +5,9 @@
|
| #ifndef PPAPI_THUNK_PPB_FILE_REF_API_H_
|
| #define PPAPI_THUNK_PPB_FILE_REF_API_H_
|
|
|
| +#include <vector>
|
| +
|
| +#include "base/memory/linked_ptr.h"
|
| #include "base/memory/ref_counted.h"
|
| #include "ppapi/c/ppb_file_ref.h"
|
| #include "ppapi/thunk/ppapi_thunk_export.h"
|
| @@ -34,6 +37,24 @@ class PPAPI_THUNK_EXPORT PPB_FileRef_API {
|
| scoped_refptr<TrackedCallback> callback) = 0;
|
| virtual int32_t Query(PP_FileInfo* info,
|
| scoped_refptr<TrackedCallback> callback) = 0;
|
| + 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).
|
|
|