Index: mojo/public/java/bindings/src/org/chromium/mojo/bindings/InterfaceControlMessagesHelper.java |
diff --git a/mojo/public/java/bindings/src/org/chromium/mojo/bindings/InterfaceControlMessagesHelper.java b/mojo/public/java/bindings/src/org/chromium/mojo/bindings/InterfaceControlMessagesHelper.java |
index 939fb93988a2df36618aa4a4de62e7ac8b6f6319..67f7497cdb045f80f01ef9a1b7ab3506db4630b8 100644 |
--- a/mojo/public/java/bindings/src/org/chromium/mojo/bindings/InterfaceControlMessagesHelper.java |
+++ b/mojo/public/java/bindings/src/org/chromium/mojo/bindings/InterfaceControlMessagesHelper.java |
@@ -64,11 +64,16 @@ public class InterfaceControlMessagesHelper { |
*/ |
public static <I extends Interface, P extends Proxy> boolean handleRun( |
Core core, Manager<I, P> manager, ServiceMessage message, MessageReceiver responder) { |
+ Message payload = message.getPayload(); |
+ RunMessageParams query = RunMessageParams.deserialize(payload); |
RunResponseMessageParams response = new RunResponseMessageParams(); |
- response.reserved0 = 16; |
- response.reserved1 = 0; |
- response.queryVersionResult = new QueryVersionResult(); |
- response.queryVersionResult.version = manager.getVersion(); |
+ response.output = new RunOutput(); |
+ if (query.input.which() == RunInput.Tag.QueryVersion) { |
+ response.output.setQueryVersionResult(new QueryVersionResult()); |
+ response.output.getQueryVersionResult().version = manager.getVersion(); |
+ } else { |
+ return false; |
yzshen1
2016/08/25 21:08:57
We need to respond with a null output.
Sam McNally
2016/08/25 21:47:50
Done.
|
+ } |
return responder.accept(response.serializeWithHeader( |
core, new MessageHeader(InterfaceControlMessagesConstants.RUN_MESSAGE_ID, |
@@ -84,6 +89,9 @@ public class InterfaceControlMessagesHelper { |
Manager<I, P> manager, ServiceMessage message) { |
Message payload = message.getPayload(); |
RunOrClosePipeMessageParams query = RunOrClosePipeMessageParams.deserialize(payload); |
- return query.requireVersion.version <= manager.getVersion(); |
+ if (query.input.which() == RunOrClosePipeInput.Tag.RequireVersion) { |
+ return query.input.getRequireVersion().version <= manager.getVersion(); |
+ } |
+ return false; |
} |
} |