Index: extensions/browser/api/display_source/wifi_display/wifi_display_media_service_impl.cc |
diff --git a/extensions/browser/api/display_source/wifi_display/wifi_display_media_service_impl.cc b/extensions/browser/api/display_source/wifi_display/wifi_display_media_service_impl.cc |
index c7e3eb5a0444c54333bd318ee5f7f96a79b5bac8..6b33339972934ef643b9839650b69c9a66dc077f 100644 |
--- a/extensions/browser/api/display_source/wifi_display/wifi_display_media_service_impl.cc |
+++ b/extensions/browser/api/display_source/wifi_display/wifi_display_media_service_impl.cc |
@@ -62,7 +62,7 @@ WiFiDisplayMediaServiceImpl::WiFiDisplayMediaServiceImpl() |
WiFiDisplayMediaServiceImpl::~WiFiDisplayMediaServiceImpl() {} |
void WiFiDisplayMediaServiceImpl::SetDesinationPoint( |
- const mojo::String& ip_address, |
+ const std::string& ip_address, |
int32_t port, |
const SetDesinationPointCallback& callback) { |
DCHECK_CURRENTLY_ON(content::BrowserThread::IO); |
@@ -87,11 +87,19 @@ void WiFiDisplayMediaServiceImpl::SetDesinationPoint( |
callback.Run(true); |
} |
-void WiFiDisplayMediaServiceImpl::SendMediaPacket(mojo::Array<uint8_t> packet) { |
+void WiFiDisplayMediaServiceImpl::SendMediaPacket( |
+ WiFiDisplayMediaPacketPtr packet) { |
DCHECK(rtp_socket_); |
DCHECK_CURRENTLY_ON(content::BrowserThread::IO); |
- if (packet.size() >> 15) { |
+ if (!packet) { |
+ DVLOG(1) << "Packet missing, skipping."; |
+ return; |
+ } |
+ |
+ std::vector<uint8_t>* packet_data = &packet->data; |
+ |
+ if (packet_data->size() >> 15) { |
DVLOG(1) << "Packet size limit is exceeded, skipping."; |
return; |
} |
@@ -103,7 +111,7 @@ void WiFiDisplayMediaServiceImpl::SendMediaPacket(mojo::Array<uint8_t> packet) { |
// Create, queue and send a write buffer. |
scoped_refptr<PacketIOBuffer> write_buffer = |
- new PacketIOBuffer(std::move(packet)); |
+ new PacketIOBuffer(std::move(*packet_data)); |
write_buffers_.push(std::move(write_buffer)); |
Send(); |