| 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 "ppapi/proxy/ppb_instance_proxy.h" | 5 #include "ppapi/proxy/ppb_instance_proxy.h" |
| 6 | 6 |
| 7 #include "build/build_config.h" | 7 #include "build/build_config.h" |
| 8 #include "ppapi/c/pp_errors.h" | 8 #include "ppapi/c/pp_errors.h" |
| 9 #include "ppapi/c/pp_time.h" | 9 #include "ppapi/c/pp_time.h" |
| 10 #include "ppapi/c/pp_var.h" | 10 #include "ppapi/c/pp_var.h" |
| (...skipping 504 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 515 instance, | 515 instance, |
| 516 SerializedVarSendInput(dispatcher(), key_system), | 516 SerializedVarSendInput(dispatcher(), key_system), |
| 517 SerializedVarSendInput(dispatcher(), session_id), | 517 SerializedVarSendInput(dispatcher(), session_id), |
| 518 media_error, | 518 media_error, |
| 519 system_code)); | 519 system_code)); |
| 520 } | 520 } |
| 521 | 521 |
| 522 void PPB_Instance_Proxy::DeliverBlock(PP_Instance instance, | 522 void PPB_Instance_Proxy::DeliverBlock(PP_Instance instance, |
| 523 PP_Resource decrypted_block, | 523 PP_Resource decrypted_block, |
| 524 const PP_DecryptedBlockInfo* block_info) { | 524 const PP_DecryptedBlockInfo* block_info) { |
| 525 Resource* object = | 525 PP_Resource decrypted_block_host_resource = 0; |
| 526 PpapiGlobals::Get()->GetResourceTracker()->GetResource(decrypted_block); | 526 |
| 527 if (!object || object->pp_instance() != instance) | 527 if (decrypted_block) { |
| 528 return; | 528 Resource* object = |
| 529 PpapiGlobals::Get()->GetResourceTracker()->GetResource(decrypted_block); |
| 530 if (!object || object->pp_instance() != instance) |
| 531 return; |
| 532 decrypted_block_host_resource = object->host_resource().host_resource(); |
| 533 } |
| 529 | 534 |
| 530 std::string serialized_block_info; | 535 std::string serialized_block_info; |
| 531 if (!SerializeBlockInfo(*block_info, &serialized_block_info)) | 536 if (!SerializeBlockInfo(*block_info, &serialized_block_info)) |
| 532 return; | 537 return; |
| 533 | 538 |
| 534 dispatcher()->Send( | 539 dispatcher()->Send( |
| 535 new PpapiHostMsg_PPBInstance_DeliverBlock(API_ID_PPB_INSTANCE, | 540 new PpapiHostMsg_PPBInstance_DeliverBlock(API_ID_PPB_INSTANCE, |
| 536 instance, | 541 instance, |
| 537 object->host_resource().host_resource(), | 542 decrypted_block_host_resource, |
| 538 serialized_block_info)); | 543 serialized_block_info)); |
| 539 } | 544 } |
| 540 | 545 |
| 541 void PPB_Instance_Proxy::DecoderInitialized(PP_Instance instance, | 546 void PPB_Instance_Proxy::DecoderInitialized(PP_Instance instance, |
| 542 PP_Bool success, | 547 PP_Bool success, |
| 543 uint32_t request_id) { | 548 uint32_t request_id) { |
| 544 dispatcher()->Send( | 549 dispatcher()->Send( |
| 545 new PpapiHostMsg_PPBInstance_DecoderInitialized( | 550 new PpapiHostMsg_PPBInstance_DecoderInitialized( |
| 546 API_ID_PPB_INSTANCE, | 551 API_ID_PPB_INSTANCE, |
| 547 instance, | 552 instance, |
| (...skipping 17 matching lines...) Expand all Loading... |
| 565 PP_DecryptorStreamType decoder_type, | 570 PP_DecryptorStreamType decoder_type, |
| 566 uint32_t request_id) { | 571 uint32_t request_id) { |
| 567 dispatcher()->Send( | 572 dispatcher()->Send( |
| 568 new PpapiHostMsg_PPBInstance_DecoderResetDone( | 573 new PpapiHostMsg_PPBInstance_DecoderResetDone( |
| 569 API_ID_PPB_INSTANCE, | 574 API_ID_PPB_INSTANCE, |
| 570 instance, | 575 instance, |
| 571 decoder_type, | 576 decoder_type, |
| 572 request_id)); | 577 request_id)); |
| 573 } | 578 } |
| 574 | 579 |
| 580 // TODO(tomfinegan): Handle null decrypted_frame after landing other patches. |
| 575 void PPB_Instance_Proxy::DeliverFrame(PP_Instance instance, | 581 void PPB_Instance_Proxy::DeliverFrame(PP_Instance instance, |
| 576 PP_Resource decrypted_frame, | 582 PP_Resource decrypted_frame, |
| 577 const PP_DecryptedFrameInfo* frame_info) { | 583 const PP_DecryptedFrameInfo* frame_info) { |
| 578 Resource* object = | 584 Resource* object = |
| 579 PpapiGlobals::Get()->GetResourceTracker()->GetResource(decrypted_frame); | 585 PpapiGlobals::Get()->GetResourceTracker()->GetResource(decrypted_frame); |
| 580 if (!object || object->pp_instance() != instance) | 586 if (!object || object->pp_instance() != instance) |
| 581 return; | 587 return; |
| 582 | 588 |
| 583 std::string serialized_block_info; | 589 std::string serialized_block_info; |
| 584 if (!SerializeBlockInfo(*frame_info, &serialized_block_info)) | 590 if (!SerializeBlockInfo(*frame_info, &serialized_block_info)) |
| 585 return; | 591 return; |
| 586 | 592 |
| 587 dispatcher()->Send(new PpapiHostMsg_PPBInstance_DeliverFrame( | 593 dispatcher()->Send(new PpapiHostMsg_PPBInstance_DeliverFrame( |
| 588 API_ID_PPB_INSTANCE, | 594 API_ID_PPB_INSTANCE, |
| 589 instance, | 595 instance, |
| 590 object->host_resource().host_resource(), | 596 object->host_resource().host_resource(), |
| 591 serialized_block_info)); | 597 serialized_block_info)); |
| 592 } | 598 } |
| 593 | 599 |
| 600 // TODO(tomfinegan): Handle null decrypted_samples after landing other patches. |
| 594 void PPB_Instance_Proxy::DeliverSamples( | 601 void PPB_Instance_Proxy::DeliverSamples( |
| 595 PP_Instance instance, | 602 PP_Instance instance, |
| 596 PP_Resource decrypted_samples, | 603 PP_Resource decrypted_samples, |
| 597 const PP_DecryptedBlockInfo* block_info) { | 604 const PP_DecryptedBlockInfo* block_info) { |
| 598 Resource* object = | 605 Resource* object = |
| 599 PpapiGlobals::Get()->GetResourceTracker()->GetResource(decrypted_samples); | 606 PpapiGlobals::Get()->GetResourceTracker()->GetResource(decrypted_samples); |
| 600 if (!object || object->pp_instance() != instance) | 607 if (!object || object->pp_instance() != instance) |
| 601 return; | 608 return; |
| 602 | 609 |
| 603 std::string serialized_block_info; | 610 std::string serialized_block_info; |
| (...skipping 516 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1120 PP_Instance instance) { | 1127 PP_Instance instance) { |
| 1121 InstanceData* data = static_cast<PluginDispatcher*>(dispatcher())-> | 1128 InstanceData* data = static_cast<PluginDispatcher*>(dispatcher())-> |
| 1122 GetInstanceData(instance); | 1129 GetInstanceData(instance); |
| 1123 if (!data) | 1130 if (!data) |
| 1124 return; // Instance was probably deleted. | 1131 return; // Instance was probably deleted. |
| 1125 data->should_do_request_surrounding_text = false; | 1132 data->should_do_request_surrounding_text = false; |
| 1126 } | 1133 } |
| 1127 | 1134 |
| 1128 } // namespace proxy | 1135 } // namespace proxy |
| 1129 } // namespace ppapi | 1136 } // namespace ppapi |
| OLD | NEW |