Skyost / Bonsoir

A Zeroconf library that allows you to discover network services and to broadcast your own. Based on Apple Bonjour and Android NSD.
http://bonsoir.skyost.eu/
Other
107 stars 49 forks source link

java.util.ConcurrentModificationException is throwed by BonsoirServiceDiscovery.kt #93

Closed heiha100 closed 2 months ago

heiha100 commented 5 months ago

Describe the bug

java.util.ConcurrentModificationException
    at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:1029)
    at java.util.ArrayList$Itr.next(ArrayList.java:982)
    at fr.skyost.bonsoir.discovery.BonsoirServiceDiscovery.fr.skyost.bonsoir.BonsoirService findService(java.lang.String,java.lang.String)(BonsoirServiceDiscovery.kt:90)
    at fr.skyost.bonsoir.discovery.BonsoirServiceDiscovery.void resolveService(java.lang.String,java.lang.String)(BonsoirServiceDiscovery.kt:182)
    at fr.skyost.bonsoir.MethodCallHandler.void onMethodCall(io.flutter.plugin.common.MethodCall,io.flutter.plugin.common.MethodChannel$Result)(MethodCallHandler.kt:95)
    at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.void onMessage(java.nio.ByteBuffer,io.flutter.plugin.common.BinaryMessenger$BinaryReply)(MethodChannel.java:267)
    at io.flutter.embedding.engine.dart.DartMessenger.void invokeHandler(io.flutter.embedding.engine.dart.DartMessenger$HandlerInfo,java.nio.ByteBuffer,int)(DartMessenger.java:292)
    at io.flutter.embedding.engine.dart.DartMessenger.void lambda$dispatchMessageToQueue$0(java.lang.String,int,io.flutter.embedding.engine.dart.DartMessenger$HandlerInfo,java.nio.ByteBuffer,long)(DartMessenger.java:319)
    at android.os.Handler.handleCallback(Handler.java:958)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loopOnce(Looper.java:257)
    at android.os.Looper.loop(Looper.java:368)
    at android.app.ActivityThread.main(ActivityThread.java:8832)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:572)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1049)

To Reproduce Not sure how to reproduce. But i guess it caused by restarting BonsoirDiscovery

Smartphone (please complete the following information):

Additional context I try restart BonsoirDiscovery and BonsoirBroadcast when the app back to foreground or network connectivity changed.

Skyost commented 5 months ago

Your stacktrace seems obfuscated, can you please provide a non-obfuscated stacktrace ?

heiha100 commented 5 months ago

Your stacktrace seems obfuscated, can you please provide a non-obfuscated stacktrace ? I updated the stacktrace