| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "native_client/src/shared/ppapi_proxy/browser_callback.h" | 5 #include "native_client/src/shared/ppapi_proxy/browser_callback.h" |
| 6 | 6 |
| 7 #include <new> | 7 #include <new> |
| 8 | 8 |
| 9 #include "native_client/src/include/nacl_macros.h" | 9 #include "native_client/src/include/nacl_macros.h" |
| 10 #include "native_client/src/include/nacl_scoped_ptr.h" | 10 #include "native_client/src/include/nacl_scoped_ptr.h" |
| (...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 82 | 82 |
| 83 nacl_abi_size_t read_buffer_size = 0; | 83 nacl_abi_size_t read_buffer_size = 0; |
| 84 CheckResultFunc check_result_func = remote_callback->check_result_func; | 84 CheckResultFunc check_result_func = remote_callback->check_result_func; |
| 85 GetReadSizeFunc get_size_read_func = remote_callback->get_size_read_func; | 85 GetReadSizeFunc get_size_read_func = remote_callback->get_size_read_func; |
| 86 if ((*check_result_func)(result) && remote_callback->read_buffer != NULL) | 86 if ((*check_result_func)(result) && remote_callback->read_buffer != NULL) |
| 87 read_buffer_size = (*get_size_read_func)(result); | 87 read_buffer_size = (*get_size_read_func)(result); |
| 88 if (remote_callback->read_var.type != PP_VARTYPE_NULL) { | 88 if (remote_callback->read_var.type != PP_VARTYPE_NULL) { |
| 89 read_buffer_size = kMaxReturnVarSize; | 89 read_buffer_size = kMaxReturnVarSize; |
| 90 read_buffer.reset( | 90 read_buffer.reset( |
| 91 Serialize(&remote_callback->read_var, 1, &read_buffer_size)); | 91 Serialize(&remote_callback->read_var, 1, &read_buffer_size)); |
| 92 PPBVarInterface()->Release(remote_callback->read_var); |
| 92 } | 93 } |
| 93 | 94 |
| 94 NaClSrpcError srpc_result = | 95 NaClSrpcError srpc_result = |
| 95 CompletionCallbackRpcClient::RunCompletionCallback( | 96 CompletionCallbackRpcClient::RunCompletionCallback( |
| 96 remote_callback->srpc_channel, | 97 remote_callback->srpc_channel, |
| 97 remote_callback->callback_id, | 98 remote_callback->callback_id, |
| 98 result, | 99 result, |
| 99 read_buffer_size, | 100 read_buffer_size, |
| 100 read_buffer.get()); | 101 read_buffer.get()); |
| 101 DebugPrintf("RunRemoteCallback: %s\n", | 102 DebugPrintf("RunRemoteCallback: %s\n", |
| (...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 175 return MakeRemoteCompletionCallback(srpc_channel, callback_id, 0, NULL); | 176 return MakeRemoteCompletionCallback(srpc_channel, callback_id, 0, NULL); |
| 176 } | 177 } |
| 177 | 178 |
| 178 void DeleteRemoteCallbackInfo(struct PP_CompletionCallback callback) { | 179 void DeleteRemoteCallbackInfo(struct PP_CompletionCallback callback) { |
| 179 nacl::scoped_ptr<RemoteCallbackInfo> remote_callback( | 180 nacl::scoped_ptr<RemoteCallbackInfo> remote_callback( |
| 180 reinterpret_cast<RemoteCallbackInfo*>(callback.user_data)); | 181 reinterpret_cast<RemoteCallbackInfo*>(callback.user_data)); |
| 181 nacl::scoped_array<char> read_buffer(remote_callback->read_buffer); | 182 nacl::scoped_array<char> read_buffer(remote_callback->read_buffer); |
| 182 } | 183 } |
| 183 | 184 |
| 184 } // namespace ppapi_proxy | 185 } // namespace ppapi_proxy |
| OLD | NEW |