From 3556a814e169253be6f341c0d4ea171e2779bcc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrien=20Coye=20de=20Brune=CC=81lis?= Date: Wed, 12 Jun 2024 12:48:51 +0200 Subject: [PATCH] fix: prevent double group.enter() in ExpiringActivity --- .../InfomaniakCore/SuddenTermination/ExpiringActivity.swift | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Sources/InfomaniakCore/SuddenTermination/ExpiringActivity.swift b/Sources/InfomaniakCore/SuddenTermination/ExpiringActivity.swift index 30c1c1e..393d117 100644 --- a/Sources/InfomaniakCore/SuddenTermination/ExpiringActivity.swift +++ b/Sources/InfomaniakCore/SuddenTermination/ExpiringActivity.swift @@ -109,6 +109,11 @@ public final class ExpiringActivity: ExpiringActivityable { if shouldTerminate { self.shouldTerminate = true delegate?.backgroundActivityExpiring() + + // At this point we should release the block, but we prefer to wait until the end 🫡⛵️🪦 + // There is a chance endAll() is called while we wait in should terminate + group.wait() + return } group.enter()