Set appropriate bits in `eventgroup_destroy_force`.

Notifying waiters is not enough, we need to ensure that they get
appropriate bits to leave the loop.

Signed-off-by: Hugo Lefeuvre <hugo.lefeuvre@scisemi.com>
diff --git a/sdk/lib/event_group/event_group.cc b/sdk/lib/event_group/event_group.cc
index 947b2f4..04d0337 100644
--- a/sdk/lib/event_group/event_group.cc
+++ b/sdk/lib/event_group/event_group.cc
@@ -183,11 +183,12 @@
 	// Force all waiters to wake.
 	for (size_t i = 0; i < group->waiterCount; ++i)
 	{
-		auto &waiter = group->waiters[i];
-		if (waiter.bitsWanted == 0)
-		{
-			continue;
-		}
+		// Notifying is not enough, we need to ensure that waiters get
+		// appropriate bits to leave the loop.
+		auto    &waiter   = group->waiters[i];
+		uint32_t bits     = waiter.bitsWanted;
+		waiter.bitsWanted = 0;
+		waiter.bitsSeen   = bits;
 		waiter.bitsSeen.notify_one();
 	}
 	heap_free(heapCapability, group);