tchegito / zildo

The Land of Alembrume
GNU Lesser General Public License v3.0
4 stars 1 forks source link

[2.63] ConcurrentModificationException #187

Open tchegito opened 2 months ago

tchegito commented 2 months ago

Happened on Android 14 (SDK 34), a new ConcurrentModificationException on touch management:

Exception java.util.ConcurrentModificationException:
  at java.util.HashMap$HashIterator.nextNode (HashMap.java:1574)
  at java.util.HashMap$EntryIterator.next (HashMap.java:1607)
  at java.util.HashMap$EntryIterator.next (HashMap.java:1605)
  at zildo.client.gui.GUIDisplay.getItemOnLocation (GUIDisplay.java:1212)
  at com.alembrum.TouchListener.onTouch (TouchListener.java:88)
  at android.view.View.dispatchTouchEvent (View.java:15851)
  at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3214)
  at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2851)
  at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3214)
  at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2851)
  at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3214)
  at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2851)
  at android.view.ViewGroup.dispatchTransformedTouchEvent (ViewGroup.java:3214)
  at android.view.ViewGroup.dispatchTouchEvent (ViewGroup.java:2851)
  at com.android.internal.policy.DecorView.superDispatchTouchEvent (DecorView.java:577)
  at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent (PhoneWindow.java:1908)
  at android.app.Activity.dispatchTouchEvent (Activity.java:4579)
  at com.android.internal.policy.DecorView.dispatchTouchEvent (DecorView.java:535)
  at android.view.View.dispatchPointerEvent (View.java:16169)
  at com.xiaomi.mirror.MiuiMirrorImpl.isHandled (MiuiMirrorImpl.java:152)
  at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent (ViewRootImpl.java:8033)
  at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess (ViewRootImpl.java:7794)
  at android.view.ViewRootImpl$InputStage.deliver (ViewRootImpl.java:7162)
  at android.view.ViewRootImpl$InputStage.onDeliverToNext (ViewRootImpl.java:7219)
  at android.view.ViewRootImpl$InputStage.forward (ViewRootImpl.java:7185)
  at android.view.ViewRootImpl$AsyncInputStage.forward (ViewRootImpl.java:7350)
  at android.view.ViewRootImpl$InputStage.apply (ViewRootImpl.java:7193)
  at android.view.ViewRootImpl$AsyncInputStage.apply (ViewRootImpl.java:7407)
  at android.view.ViewRootImpl$InputStage.deliver (ViewRootImpl.java:7166)
  at android.view.ViewRootImpl$InputStage.onDeliverToNext (ViewRootImpl.java:7219)
  at android.view.ViewRootImpl$InputStage.forward (ViewRootImpl.java:7185)
  at android.view.ViewRootImpl$InputStage.apply (ViewRootImpl.java:7193)
  at android.view.ViewRootImpl$InputStage.deliver (ViewRootImpl.java:7166)
  at android.view.ViewRootImpl.deliverInputEvent (ViewRootImpl.java:10420)
  at android.view.ViewRootImpl.doProcessInputEvents (ViewRootImpl.java:10371)
  at android.view.ViewRootImpl.enqueueInputEvent (ViewRootImpl.java:10326)
  at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent (ViewRootImpl.java:10586)
  at android.view.InputEventReceiver.dispatchInputEvent (InputEventReceiver.java:306)
  at android.view.InputEventReceiver.nativeConsumeBatchedInputEvents
  at android.view.InputEventReceiver.consumeBatchedInputEvents (InputEventReceiver.java:274)
  at android.view.ViewRootImpl.doConsumeBatchedInput (ViewRootImpl.java:10512)
  at android.view.ViewRootImpl$ConsumeBatchedInputRunnable.run (ViewRootImpl.java:10680)
  at android.view.Choreographer$CallbackRecord.run (Choreographer.java:1682)
  at android.view.Choreographer$CallbackRecord.run (Choreographer.java:1691)
  at android.view.Choreographer.doCallbacks (Choreographer.java:1191)
  at android.view.Choreographer.doFrame (Choreographer.java:1044)
  at android.view.Choreographer$FrameDisplayEventReceiver.run (Choreographer.java:1655)
  at android.os.Handler.handleCallback (Handler.java:958)
  at android.os.Handler.dispatchMessage (Handler.java:99)
  at android.os.Looper.loopOnce (Looper.java:222)
  at android.os.Looper.loop (Looper.java:314)
  at android.app.ActivityThread.main (ActivityThread.java:8671)
  at java.lang.reflect.Method.invoke
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:565)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1081)

We already had similar problem on issue #123 I note here that phone is a Xiaomi one (maybe linked to the cause).