diff options
author | Frank Elias <francois.elias@livio.io> | 2020-09-17 16:21:23 -0400 |
---|---|---|
committer | Frank Elias <francois.elias@livio.io> | 2020-09-17 16:21:23 -0400 |
commit | 420a7721b7e35a45c2b79fc2e0a97682672fec8b (patch) | |
tree | f92cd9b73070a1686d1c7fa9d83ec84fa1055e60 | |
parent | c886ad9217ec5c32919f5726c069a10b72b1d005 (diff) | |
download | sdl_ios-bugfix/issue-1615-consolidate-logic-for-saving-the-dynamic-mtu-size.tar.gz |
-rw-r--r-- | SmartDeviceLink/private/SDLProtocol.m | 7 | ||||
-rw-r--r-- | SmartDeviceLinkTests/ProtocolSpecs/MessageSpecs/SDLProtocolSpec.m | 2 |
2 files changed, 6 insertions, 3 deletions
diff --git a/SmartDeviceLink/private/SDLProtocol.m b/SmartDeviceLink/private/SDLProtocol.m index 2762d5ab9..d4fedeee4 100644 --- a/SmartDeviceLink/private/SDLProtocol.m +++ b/SmartDeviceLink/private/SDLProtocol.m @@ -513,6 +513,7 @@ NS_ASSUME_NONNULL_BEGIN switch (startServiceACK.header.serviceType) { case SDLServiceTypeRPC: { SDLControlFramePayloadRPCStartServiceAck *startServiceACKPayload = [[SDLControlFramePayloadRPCStartServiceAck alloc] initWithData:startServiceACK.payload]; + if (startServiceACKPayload.mtu != SDLControlFrameInt64NotFound) { [[SDLGlobals sharedGlobals] setDynamicMTUSize:(NSUInteger)startServiceACKPayload.mtu forServiceType:startServiceACK.header.serviceType]; } @@ -525,15 +526,17 @@ NS_ASSUME_NONNULL_BEGIN self.authToken = [SDLGlobals.sharedGlobals.maxHeadUnitProtocolVersion isGreaterThanOrEqualToVersion:[[SDLVersion alloc] initWithMajor:5 minor:2 patch:0]] ? startServiceACKPayload.authToken : nil; // TODO: Hash id? - } + } break; case SDLServiceTypeAudio: { SDLControlFramePayloadRPCStartServiceAck *startServiceACKPayload = [[SDLControlFramePayloadRPCStartServiceAck alloc] initWithData:startServiceACK.payload]; + if (startServiceACKPayload.mtu != SDLControlFrameInt64NotFound) { [[SDLGlobals sharedGlobals] setDynamicMTUSize:(NSUInteger)startServiceACKPayload.mtu forServiceType:SDLServiceTypeAudio]; } - } + } break; case SDLServiceTypeVideo: { SDLControlFramePayloadRPCStartServiceAck *startServiceACKPayload = [[SDLControlFramePayloadRPCStartServiceAck alloc] initWithData:startServiceACK.payload]; + if (startServiceACKPayload.mtu != SDLControlFrameInt64NotFound) { [[SDLGlobals sharedGlobals] setDynamicMTUSize:(NSUInteger)startServiceACKPayload.mtu forServiceType:SDLServiceTypeVideo]; } diff --git a/SmartDeviceLinkTests/ProtocolSpecs/MessageSpecs/SDLProtocolSpec.m b/SmartDeviceLinkTests/ProtocolSpecs/MessageSpecs/SDLProtocolSpec.m index ded09f7eb..483033569 100644 --- a/SmartDeviceLinkTests/ProtocolSpecs/MessageSpecs/SDLProtocolSpec.m +++ b/SmartDeviceLinkTests/ProtocolSpecs/MessageSpecs/SDLProtocolSpec.m @@ -493,7 +493,7 @@ describe(@"HandleProtocolSessionStarted tests", ^ { }); }); - context(@"If the service type is not RPC", ^{ + context(@"If the service type is control", ^{ it(@"Should just pass the start service along to the delegate", ^{ SDLControlFramePayloadRPCStartServiceAck *testPayload = [[SDLControlFramePayloadRPCStartServiceAck alloc] initWithHashId:hashId mtu:testMTU authToken:testAuthToken protocolVersion:@"5.1.0" secondaryTransports:nil audioServiceTransports:nil videoServiceTransports:nil]; NSData *testData = testPayload.data; |