| Index: webkit/plugins/ppapi/ppb_file_io_impl.cc
|
| diff --git a/webkit/plugins/ppapi/ppb_file_io_impl.cc b/webkit/plugins/ppapi/ppb_file_io_impl.cc
|
| index 26f0154c794f4d63b2d42bf95d513efdf0d1c89a..62c47157c58bb21614bbcac59d5027771b86c885 100644
|
| --- a/webkit/plugins/ppapi/ppb_file_io_impl.cc
|
| +++ b/webkit/plugins/ppapi/ppb_file_io_impl.cc
|
| @@ -201,13 +201,15 @@ int32_t PPB_FileIO_Impl::Write(int64_t offset,
|
| if (quota_file_io_.get()) {
|
| if (!quota_file_io_->Write(
|
| offset, buffer, bytes_to_write,
|
| - callback_factory_.NewCallback(&PPB_FileIO_Impl::WriteCallback)))
|
| + base::Bind(&PPB_FileIO_Impl::WriteCallback,
|
| + weak_factory_.GetWeakPtr())))
|
| return PP_ERROR_FAILED;
|
| } else {
|
| if (!base::FileUtilProxy::Write(
|
| - plugin_delegate->GetFileThreadMessageLoopProxy(),
|
| - file_, offset, buffer, bytes_to_write,
|
| - callback_factory_.NewCallback(&PPB_FileIO_Impl::WriteCallback)))
|
| + plugin_delegate->GetFileThreadMessageLoopProxy(), file_, offset,
|
| + buffer, bytes_to_write,
|
| + base::Bind(&PPB_FileIO_Impl::WriteCallback,
|
| + weak_factory_.GetWeakPtr())))
|
| return PP_ERROR_FAILED;
|
| }
|
|
|
| @@ -292,7 +294,8 @@ int32_t PPB_FileIO_Impl::WillWrite(int64_t offset,
|
|
|
| if (!quota_file_io_->WillWrite(
|
| offset, bytes_to_write,
|
| - callback_factory_.NewCallback(&PPB_FileIO_Impl::WillWriteCallback)))
|
| + base::Bind(&PPB_FileIO_Impl::WillWriteCallback,
|
| + weak_factory_.GetWeakPtr())))
|
| return PP_ERROR_FAILED;
|
|
|
| RegisterCallback(OPERATION_EXCLUSIVE, callback, NULL);
|
|
|