diff options
-rw-r--r-- | src/objective-c/GRPCClient/private/GRPCHost.m | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/objective-c/GRPCClient/private/GRPCHost.m b/src/objective-c/GRPCClient/private/GRPCHost.m index 7c31b10636..6bb5996a1b 100644 --- a/src/objective-c/GRPCClient/private/GRPCHost.m +++ b/src/objective-c/GRPCClient/private/GRPCHost.m @@ -113,7 +113,21 @@ static NSMutableDictionary *kHostCache; options.PEMPrivateKey = _PEMPrivateKey; options.PEMCertChain = _pemCertChain; options.hostNameOverride = _hostNameOverride; - options.transportType = _transportType; +#ifdef GRPC_COMPILE_WITH_CRONET + // By old API logic, insecure channel precedes Cronet channel; Cronet channel preceeds default + // channel. + if ([GRPCCall isUsingCronet]) { + if (_transportType == GRPCTransportTypeInsecure) { + options.transportType = GRPCTransportTypeInsecure; + } else { + NSAssert(_transportType == GRPCTransportTypeDefault, @"Invalid transport type"); + options.transportType = GRPCTransportTypeCronet; + } + } else +#endif + { + options.transportType = _transportType; + } options.logContext = _logContext; return options; |