| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 "ppapi/proxy/ppb_audio_proxy.h" | 5 #include "ppapi/proxy/ppb_audio_proxy.h" |
| 6 | 6 |
| 7 #include "base/compiler_specific.h" | 7 #include "base/compiler_specific.h" |
| 8 #include "base/threading/simple_thread.h" | 8 #include "base/threading/simple_thread.h" |
| 9 #include "ppapi/c/pp_errors.h" | 9 #include "ppapi/c/pp_errors.h" |
| 10 #include "ppapi/c/ppb_audio.h" | 10 #include "ppapi/c/ppb_audio.h" |
| (...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 132 PPB_Audio_Callback audio_callback, | 132 PPB_Audio_Callback audio_callback, |
| 133 void* user_data) { | 133 void* user_data) { |
| 134 PluginDispatcher* dispatcher = PluginDispatcher::GetForInstance(instance_id); | 134 PluginDispatcher* dispatcher = PluginDispatcher::GetForInstance(instance_id); |
| 135 if (!dispatcher) | 135 if (!dispatcher) |
| 136 return 0; | 136 return 0; |
| 137 | 137 |
| 138 EnterResourceNoLock<PPB_AudioConfig_API> config(config_id, true); | 138 EnterResourceNoLock<PPB_AudioConfig_API> config(config_id, true); |
| 139 if (config.failed()) | 139 if (config.failed()) |
| 140 return 0; | 140 return 0; |
| 141 | 141 |
| 142 if (!audio_callback) |
| 143 return 0; |
| 144 |
| 142 HostResource result; | 145 HostResource result; |
| 143 dispatcher->Send(new PpapiHostMsg_PPBAudio_Create( | 146 dispatcher->Send(new PpapiHostMsg_PPBAudio_Create( |
| 144 API_ID_PPB_AUDIO, instance_id, | 147 API_ID_PPB_AUDIO, instance_id, |
| 145 config.object()->GetSampleRate(), config.object()->GetSampleFrameCount(), | 148 config.object()->GetSampleRate(), config.object()->GetSampleFrameCount(), |
| 146 &result)); | 149 &result)); |
| 147 if (result.is_null()) | 150 if (result.is_null()) |
| 148 return 0; | 151 return 0; |
| 149 | 152 |
| 150 return (new Audio(result, config_id, | 153 return (new Audio(result, config_id, |
| 151 audio_callback, user_data))->GetReference(); | 154 audio_callback, user_data))->GetReference(); |
| (...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 306 *foreign_shared_memory_handle = dispatcher()->ShareHandleWithRemote( | 309 *foreign_shared_memory_handle = dispatcher()->ShareHandleWithRemote( |
| 307 IntToPlatformFile(shared_memory_handle), false); | 310 IntToPlatformFile(shared_memory_handle), false); |
| 308 if (*foreign_shared_memory_handle == IPC::InvalidPlatformFileForTransit()) | 311 if (*foreign_shared_memory_handle == IPC::InvalidPlatformFileForTransit()) |
| 309 return PP_ERROR_FAILED; | 312 return PP_ERROR_FAILED; |
| 310 | 313 |
| 311 return PP_OK; | 314 return PP_OK; |
| 312 } | 315 } |
| 313 | 316 |
| 314 } // namespace proxy | 317 } // namespace proxy |
| 315 } // namespace ppapi | 318 } // namespace ppapi |
| OLD | NEW |