summaryrefslogtreecommitdiffstats
path: root/webkit
diff options
context:
space:
mode:
authorvictorhsieh@chromium.org <victorhsieh@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-11-16 07:41:09 +0000
committervictorhsieh@chromium.org <victorhsieh@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-11-16 07:41:09 +0000
commitbcc801f915c3cb3f0440dd3fc2a341222e6ee269 (patch)
tree97fe2c25c1c5827d0755b7d41a5d9b6203204040 /webkit
parentec7de0c5ac1ffe869a1c3e03c1f814fac2ae0746 (diff)
downloadchromium_src-bcc801f915c3cb3f0440dd3fc2a341222e6ee269.zip
chromium_src-bcc801f915c3cb3f0440dd3fc2a341222e6ee269.tar.gz
chromium_src-bcc801f915c3cb3f0440dd3fc2a341222e6ee269.tar.bz2
Provide a safer FileIO Read API
An testing util class TestCompletionCallbackWithOutput is introduced for the callback with output. BUG=155395 Review URL: https://chromiumcodereview.appspot.com/11361117 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168156 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit')
-rw-r--r--webkit/plugins/ppapi/ppb_file_io_impl.cc8
-rw-r--r--webkit/plugins/ppapi/ppb_file_io_impl.h4
2 files changed, 6 insertions, 6 deletions
diff --git a/webkit/plugins/ppapi/ppb_file_io_impl.cc b/webkit/plugins/ppapi/ppb_file_io_impl.cc
index 8c59b7e..75e62a5 100644
--- a/webkit/plugins/ppapi/ppb_file_io_impl.cc
+++ b/webkit/plugins/ppapi/ppb_file_io_impl.cc
@@ -190,8 +190,8 @@ int32_t PPB_FileIO_Impl::TouchValidated(
int32_t PPB_FileIO_Impl::ReadValidated(
int64_t offset,
- char* buffer,
- int32_t bytes_to_read,
+ const PP_ArrayOutput& output_array_buffer,
+ int32_t max_read_length,
scoped_refptr<TrackedCallback> callback) {
PluginDelegate* plugin_delegate = GetPluginDelegate();
if (!plugin_delegate)
@@ -199,12 +199,12 @@ int32_t PPB_FileIO_Impl::ReadValidated(
if (!base::FileUtilProxy::Read(
plugin_delegate->GetFileThreadMessageLoopProxy(), file_, offset,
- bytes_to_read,
+ max_read_length,
base::Bind(&PPB_FileIO_Impl::ExecutePlatformReadCallback,
weak_factory_.GetWeakPtr())))
return PP_ERROR_FAILED;
- RegisterCallback(OPERATION_READ, callback, buffer, NULL);
+ RegisterCallback(OPERATION_READ, callback, &output_array_buffer, NULL);
return PP_OK_COMPLETIONPENDING;
}
diff --git a/webkit/plugins/ppapi/ppb_file_io_impl.h b/webkit/plugins/ppapi/ppb_file_io_impl.h
index 52d1105..a6f9e89 100644
--- a/webkit/plugins/ppapi/ppb_file_io_impl.h
+++ b/webkit/plugins/ppapi/ppb_file_io_impl.h
@@ -51,8 +51,8 @@ class PPB_FileIO_Impl : public ::ppapi::PPB_FileIO_Shared {
scoped_refptr< ::ppapi::TrackedCallback> callback) OVERRIDE;
virtual int32_t ReadValidated(
int64_t offset,
- char* buffer,
- int32_t bytes_to_read,
+ const PP_ArrayOutput& output_array_buffer,
+ int32_t max_read_length,
scoped_refptr< ::ppapi::TrackedCallback> callback) OVERRIDE;
virtual int32_t WriteValidated(
int64_t offset,