Skip to content

Commit 68a88f9

Browse files
committed
Fix ConcurrentModificationError by converting manual invalidation listeners to a list
1 parent a9889eb commit 68a88f9

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

packages/riverpod/lib/src/core/ref.dart

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -783,7 +783,8 @@ void _runCallbacks(
783783
}
784784

785785
void _runManualInvalidationCallbacks(ProviderContainer container, Ref? ref) {
786-
final callbacks = ref?._onManualInvalidationListeners;
786+
// toList() protects against ConcurrentModificationError
787+
final callbacks = ref?._onManualInvalidationListeners?.toList();
787788
if (ref == null || callbacks == null) return;
788789

789790
for (final cb in callbacks) {

0 commit comments

Comments
 (0)