From d10b2a677dc5a34595cf8338c99f2d772c2047a7 Mon Sep 17 00:00:00 2001 From: "Denny C. Dai" Date: Tue, 24 Aug 2021 14:13:52 -0700 Subject: [PATCH] [gRPC-ObjC] Fix potential over releasing crash for grp channel (#27061) --- src/objective-c/GRPCClient/private/GRPCCore/GRPCChannel.m | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/objective-c/GRPCClient/private/GRPCCore/GRPCChannel.m b/src/objective-c/GRPCClient/private/GRPCCore/GRPCChannel.m index 5ad1cb462d4..5727f01c96a 100644 --- a/src/objective-c/GRPCClient/private/GRPCCore/GRPCChannel.m +++ b/src/objective-c/GRPCClient/private/GRPCCore/GRPCChannel.m @@ -291,8 +291,11 @@ } - (void)dealloc { - if (_unmanagedChannel) { - grpc_channel_destroy(_unmanagedChannel); + @synchronized(self) { + if (_unmanagedChannel) { + grpc_channel_destroy(_unmanagedChannel); + _unmanagedChannel = NULL; + } } }