| Index: mojo/public/cpp/bindings/lib/binding_state.cc
|
| diff --git a/mojo/public/cpp/bindings/lib/binding_state.cc b/mojo/public/cpp/bindings/lib/binding_state.cc
|
| index c9462745906f0493fdc08f8f8f22f6939a93a2c1..e41258f586c846949d461402ecda435cea4dcb25 100644
|
| --- a/mojo/public/cpp/bindings/lib/binding_state.cc
|
| +++ b/mojo/public/cpp/bindings/lib/binding_state.cc
|
| @@ -141,13 +141,19 @@ void MultiplexedBindingState::BindInternal(
|
| scoped_refptr<base::SingleThreadTaskRunner> runner,
|
| const char* interface_name,
|
| std::unique_ptr<MessageReceiver> request_validator,
|
| + bool passes_associated_kinds,
|
| bool has_sync_methods,
|
| MessageReceiverWithResponderStatus* stub,
|
| uint32_t interface_version) {
|
| DCHECK(!router_);
|
|
|
| - router_ = new MultiplexRouter(
|
| - std::move(handle), MultiplexRouter::MULTI_INTERFACE, false, runner);
|
| + MultiplexRouter::Config config =
|
| + passes_associated_kinds
|
| + ? MultiplexRouter::MULTI_INTERFACE
|
| + : (has_sync_methods
|
| + ? MultiplexRouter::SINGLE_INTERFACE_WITH_SYNC_METHODS
|
| + : MultiplexRouter::SINGLE_INTERFACE);
|
| + router_ = new MultiplexRouter(std::move(handle), config, false, runner);
|
| router_->SetMasterInterfaceName(interface_name);
|
|
|
| endpoint_client_.reset(new InterfaceEndpointClient(
|
|
|