From e14aec6eec029ed0af634e2f785914f1269f4d18 Mon Sep 17 00:00:00 2001 From: David Allison <62114487+david-allison@users.noreply.github.com> Date: Thu, 6 Jun 2024 08:42:48 +0100 Subject: [PATCH] docs: ChangeManager.Subscriber - lambdas Documented that lambdas should not be used Issue 16541 --- AnkiDroid/src/main/java/com/ichi2/libanki/ChangeManager.kt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/AnkiDroid/src/main/java/com/ichi2/libanki/ChangeManager.kt b/AnkiDroid/src/main/java/com/ichi2/libanki/ChangeManager.kt index 9b2dc455e0..d793487aa6 100644 --- a/AnkiDroid/src/main/java/com/ichi2/libanki/ChangeManager.kt +++ b/AnkiDroid/src/main/java/com/ichi2/libanki/ChangeManager.kt @@ -44,7 +44,9 @@ import java.lang.ref.WeakReference import java.util.concurrent.CopyOnWriteArrayList object ChangeManager { - fun interface Subscriber { + // do not make this a 'fun interface' - lambdas may immediately be GCed + // due to the use of WeakReference + interface Subscriber { /** * Called after a backend method invoked via col.op() or col.opWithProgress() * has modified the collection. Subscriber should inspect the changes, and update