Fix ConcurrentModificationException in MultiConnectionKeeper#3553
Fix ConcurrentModificationException in MultiConnectionKeeper#3553DaVinci9196 wants to merge 1 commit into
Conversation
|
getting simiral error |
|
Nice catch — real bug, and the fix is correct. Ran a quick 5-whys to make sure it hits root, not just symptom:
This PR closes #1–#3 cleanly and hardens the shared fields with the concurrent set + Builds cleanly in-tree for me. LGTM 👍 (Tiny nit, take it or leave it: stray double space in |
06-10 11:38:00.115 E/AndroidRuntime(28150): FATAL EXCEPTION: main
06-10 11:38:00.115 E/AndroidRuntime(28150): Process: com.google.android.gms, PID: 28150
06-10 11:38:00.115 E/AndroidRuntime(28150): java.util.ConcurrentModificationException
06-10 11:38:00.115 E/AndroidRuntime(28150): at java.util.HashMap$HashIterator.nextNode(HashMap.java:1454)
06-10 11:38:00.115 E/AndroidRuntime(28150): at java.util.HashMap$KeyIterator.next(HashMap.java:1478)
06-10 11:38:00.115 E/AndroidRuntime(28150): at org.microg.gms.common.MultiConnectionKeeper$Connection$1.onServiceConnected(MultiConnectionKeeper.java:216)
06-10 11:38:00.115 E/AndroidRuntime(28150): at android.app.LoadedApk$ServiceDispatcher.doConnected(LoadedApk.java:2340)
06-10 11:38:00.115 E/AndroidRuntime(28150): at android.app.LoadedApk$ServiceDispatcher$RunConnection.run(LoadedApk.java:2373)
06-10 11:38:00.115 E/AndroidRuntime(28150): at android.os.Handler.handleCallback(Handler.java:966)
06-10 11:38:00.115 E/AndroidRuntime(28150): at android.os.Handler.dispatchMessage(Handler.java:110)
06-10 11:38:00.115 E/AndroidRuntime(28150): at android.os.Looper.loopOnce(Looper.java:205)
06-10 11:38:00.115 E/AndroidRuntime(28150): at android.os.Looper.loop(Looper.java:293)
06-10 11:38:00.115 E/AndroidRuntime(28150): at android.app.ActivityThread.processInnerLoop(ActivityThread.java:10272)
06-10 11:38:00.115 E/AndroidRuntime(28150): at android.app.ActivityThread.loopProcess(ActivityThread.java:10264)
06-10 11:38:00.115 E/AndroidRuntime(28150): at android.app.ActivityThread.main(ActivityThread.java:10255)
06-10 11:38:00.115 E/AndroidRuntime(28150): at java.lang.reflect.Method.invoke(Native Method)
06-10 11:38:00.115 E/AndroidRuntime(28150): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
06-10 11:38:00.115 E/AndroidRuntime(28150): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1366)