0

[fuchsia] Remove duplicate handling of incoming_transfer

This appears to have been a merge error on top of
https://crrev.com/c/2362589 in patch set 12 of
https://crrev.com/c/2293110 (relanded as https://crrev.com/c/2417492).

Also report an error if both incoming and outgoing transfers are
present.

Bug: 1104369
Change-Id: I09ca94ce5225ebd2fc540a3a93fa0b63d1b70d8b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2430302
Reviewed-by: Kevin Marshall <kmarshall@chromium.org>
Commit-Queue: David Dorwin <ddorwin@chromium.org>
Auto-Submit: David Dorwin <ddorwin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#810745}
This commit is contained in:
David Dorwin
2020-09-25 18:50:05 +00:00
committed by Commit Bot
parent aa3a70f54d
commit fbf11067f4

@ -14,6 +14,7 @@
#include <vector>
#include "base/bind.h"
#include "base/check.h"
#include "base/containers/circular_deque.h"
#include "base/fuchsia/fuchsia_logging.h"
#include "base/macros.h"
@ -40,19 +41,17 @@ base::Optional<fuchsia::web::FrameError> BlinkMessageFromFidl(
}
blink_message->data = data_utf16;
if (fidl_message.has_outgoing_transfer() &&
fidl_message.has_incoming_transfer()) {
DLOG(WARNING) << "WebMessage may only have incoming or outgoing transfer.";
return fuchsia::web::FrameError::INTERNAL_ERROR;
}
if (fidl_message.has_outgoing_transfer()) {
for (fuchsia::web::OutgoingTransferable& transferrable :
*fidl_message.mutable_outgoing_transfer()) {
blink_message->ports.push_back(
BlinkMessagePortFromFidl(std::move(transferrable.message_port())));
}
}
if (fidl_message.has_incoming_transfer()) {
for (fuchsia::web::IncomingTransferable& transferrable :
*fidl_message.mutable_incoming_transfer()) {
blink_message->ports.push_back(
BlinkMessagePortFromFidl(std::move(transferrable.message_port())));
}
} else if (fidl_message.has_incoming_transfer()) {
for (fuchsia::web::IncomingTransferable& incoming :
*fidl_message.mutable_incoming_transfer()) {