| Index: content/renderer/presentation/presentation_dispatcher.cc
|
| diff --git a/content/renderer/presentation/presentation_dispatcher.cc b/content/renderer/presentation/presentation_dispatcher.cc
|
| index 293b030a88d9bfd911a4f29983d88b82e5d1d423..6a87110d716533486e3beb43f6227f1ae65edc7a 100644
|
| --- a/content/renderer/presentation/presentation_dispatcher.cc
|
| +++ b/content/renderer/presentation/presentation_dispatcher.cc
|
| @@ -313,9 +313,10 @@
|
| delete this;
|
| }
|
|
|
| -void PresentationDispatcher::OnScreenAvailabilityUpdated(const std::string& url,
|
| - bool available) {
|
| - auto status_it = availability_status_.find(url);
|
| +void PresentationDispatcher::OnScreenAvailabilityUpdated(
|
| + const mojo::String& url, bool available) {
|
| + const std::string& availability_url = url.get();
|
| + auto status_it = availability_status_.find(availability_url);
|
| if (status_it == availability_status_.end())
|
| return;
|
| AvailabilityStatus* status = status_it->second.get();
|
| @@ -337,8 +338,9 @@
|
| }
|
|
|
| void PresentationDispatcher::OnScreenAvailabilityNotSupported(
|
| - const std::string& url) {
|
| - auto status_it = availability_status_.find(url);
|
| + const mojo::String& url) {
|
| + const std::string& availability_url = url.get();
|
| + auto status_it = availability_status_.find(availability_url);
|
| if (status_it == availability_status_.end())
|
| return;
|
| AvailabilityStatus* status = status_it->second.get();
|
| @@ -405,7 +407,7 @@
|
| void PresentationDispatcher::OnConnectionClosed(
|
| blink::mojom::PresentationSessionInfoPtr connection,
|
| blink::mojom::PresentationConnectionCloseReason reason,
|
| - const std::string& message) {
|
| + const mojo::String& message) {
|
| if (!controller_)
|
| return;
|
|
|
| @@ -418,7 +420,7 @@
|
|
|
| void PresentationDispatcher::OnSessionMessagesReceived(
|
| blink::mojom::PresentationSessionInfoPtr session_info,
|
| - std::vector<blink::mojom::SessionMessagePtr> messages) {
|
| + mojo::Array<blink::mojom::SessionMessagePtr> messages) {
|
| if (!controller_)
|
| return;
|
|
|
| @@ -429,18 +431,16 @@
|
| new PresentationConnectionClient(session_info->url, session_info->id));
|
| switch (messages[i]->type) {
|
| case blink::mojom::PresentationMessageType::TEXT: {
|
| - // TODO(mfoltz): Do we need to DCHECK(messages[i]->message)?
|
| controller_->didReceiveSessionTextMessage(
|
| session_client.release(),
|
| - blink::WebString::fromUTF8(messages[i]->message.value()));
|
| + blink::WebString::fromUTF8(messages[i]->message));
|
| break;
|
| }
|
| case blink::mojom::PresentationMessageType::ARRAY_BUFFER:
|
| case blink::mojom::PresentationMessageType::BLOB: {
|
| - // TODO(mfoltz): Do we need to DCHECK(messages[i]->data)?
|
| controller_->didReceiveSessionBinaryMessage(
|
| - session_client.release(), &(messages[i]->data->front()),
|
| - messages[i]->data->size());
|
| + session_client.release(), &(messages[i]->data.front()),
|
| + messages[i]->data.size());
|
| break;
|
| }
|
| default: {
|
| @@ -519,7 +519,8 @@
|
| blink::mojom::SessionMessagePtr session_message =
|
| blink::mojom::SessionMessage::New();
|
| session_message->type = type;
|
| - session_message->data = std::vector<uint8_t>(data, data + length);
|
| + std::vector<uint8_t> tmp_data_vector(data, data + length);
|
| + session_message->data.Swap(&tmp_data_vector);
|
| return new SendMessageRequest(std::move(session_info),
|
| std::move(session_message));
|
| }
|
|
|