diff --git a/iOS/SonarKit/CppBridge/SonarCppBridgingConnection.mm b/iOS/SonarKit/CppBridge/SonarCppBridgingConnection.mm index 48a9eadcd..9a9c05d73 100644 --- a/iOS/SonarKit/CppBridge/SonarCppBridgingConnection.mm +++ b/iOS/SonarKit/CppBridge/SonarCppBridgingConnection.mm @@ -33,13 +33,15 @@ - (void)receive:(NSString *)method withBlock:(SonarReceiver)receiver { - const auto lambda = [receiver](const folly::dynamic &message, - std::unique_ptr responder) { - SonarCppBridgingResponder *const objCResponder = + const auto lambda = [receiver](const folly::dynamic &message, + std::unique_ptr responder) { + @autoreleasepool { + SonarCppBridgingResponder *const objCResponder = [[SonarCppBridgingResponder alloc] initWithCppResponder:std::move(responder)]; - receiver(facebook::cxxutils::convertFollyDynamicToId(message), objCResponder); - }; - conn_->receive([method UTF8String], lambda); + receiver(facebook::cxxutils::convertFollyDynamicToId(message), objCResponder); + } + }; + conn_->receive([method UTF8String], lambda); } @end