Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(92)

Unified Diff: ppapi/shared_impl/url_request_info_data.h

Issue 21966004: Pepper: Move FileRef to the "new" resource proxy. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Remove code duplication Created 7 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ppapi/shared_impl/url_request_info_data.h
diff --git a/ppapi/shared_impl/url_request_info_data.h b/ppapi/shared_impl/url_request_info_data.h
index 501251a5388f1c098640066fd9233e9e1d74a20b..3b50e65554cb6de1cd948b511e25b4e5b62402b2 100644
--- a/ppapi/shared_impl/url_request_info_data.h
+++ b/ppapi/shared_impl/url_request_info_data.h
@@ -9,10 +9,12 @@
#include <vector>
#include "base/memory/ref_counted.h"
+#include "ppapi/c/pp_resource.h"
#include "ppapi/c/pp_stdint.h"
#include "ppapi/c/pp_time.h"
-#include "ppapi/shared_impl/host_resource.h"
+#include "ppapi/shared_impl/ppapi_globals.h"
#include "ppapi/shared_impl/ppapi_shared_export.h"
+#include "ppapi/shared_impl/resource_tracker.h"
namespace ppapi {
@@ -26,6 +28,7 @@ struct PPAPI_SHARED_EXPORT URLRequestInfoData {
int64_t start_offset,
int64_t number_of_bytes,
PP_Time expected_last_modified_time);
+ ~BodyItem();
// Set if the input is a file, false means the |data| is valid.
bool is_file;
@@ -35,16 +38,9 @@ struct PPAPI_SHARED_EXPORT URLRequestInfoData {
// Is is_file is set, these variables are set. Note that the resource
// may still be NULL in some cases, such as deserialization errors.
//
- // This is a bit tricky. In the plugin side of the proxy, both the file ref
- // and the file_ref_host_resource will be set and valid. The scoped_refptr
- // ensures that the resource is alive for as long as the BodyItem is.
- //
- // When we deserialize this in the renderer, only the
- // file_ref_host_resource's are serialized over IPC. The file_refs won't be
- // valid until the host resources are converted to Resource pointers in the
- // PPB_URLRequestInfo_Impl.
- scoped_refptr<Resource> file_ref;
- HostResource file_ref_host_resource;
+ // When a BodyItem is created, a ref is taken on file_ref_pp_resource. That
+ // ref is releated when BodyItem is destroyed.
+ PP_Resource file_ref_pp_resource;
int64_t start_offset;
int64_t number_of_bytes;

Powered by Google App Engine
This is Rietveld 408576698