celzero / rethink-app

DNS over HTTPS / DNS over Tor / DNSCrypt client, WireGuard proxifier, firewall, and connection tracker for Android.
https://rethinkfirewall.com/
Apache License 2.0
3.01k stars 154 forks source link

v055o: IndexOutOfBoundsException: FastScrollRecyclerView Invalid view holder adapter (ConnectionTrackerAdapter) #1771

Open ignoramous opened 1 week ago

ignoramous commented 1 week ago

Happen when scrolling and tapping on DNS log entries (to bring up bottomsheets).

11-01 22:24:39.303 31145 31145 E AndroidRuntime: java.lang.IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adapter positionConnectionTrackerViewHolder{94e6a68 position=35000 id=-1, oldPos=0, pLpos:0 scrap [attachedScrap] tmpDetached no parent} com.simplecityapps.recyclerview_fastscroll.views.FastScrollRecyclerView{bed89e7 VFED..C.. ........ 5,153-1075,1314 #7f09057d app:id/recycler_connection viewInfo = }, adapter:com.celzero.bravedns.adapter.ConnectionTrackerAdapter@6e200e8, layout:androidx.recyclerview.widget.LinearLayoutManager@2e6209, context:com.celzero.bravedns.ui.activity.NetworkLogsActivity@4e79467
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at androidx.recyclerview.widget.RecyclerView$Recycler.validateViewHolderForOffsetPosition(RecyclerView.java:6590)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:6796)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6757)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6753)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2362)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1662)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1622)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:687)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep1(RecyclerView.java:4591)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:4346)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at androidx.recyclerview.widget.RecyclerView.consumePendingUpdateOperations(RecyclerView.java:2106)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at androidx.recyclerview.widget.RecyclerView$1.run(RecyclerView.java:468)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1544)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1553)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at android.view.Choreographer.doCallbacks(Choreographer.java:1109)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at android.view.Choreographer.doFrame(Choreographer.java:984)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1527)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at android.os.Handler.handleCallback(Handler.java:958)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at android.os.Handler.dispatchMessage(Handler.java:99)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at android.os.Looper.loopOnce(Looper.java:257)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at android.os.Looper.loop(Looper.java:368)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at android.app.ActivityThread.main(ActivityThread.java:8839)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at java.lang.reflect.Method.invoke(Native Method)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:572)
11-01 22:24:39.303 31145 31145 E AndroidRuntime: >--at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1049)

1664 / #722

ignoramous commented 2 days ago

While searching in DNS Logs

# crash log
11-13 11:15:26.936  1160  1160 E AndroidRuntime: FATAL EXCEPTION: main          
11-13 11:15:26.936  1160  1160 E AndroidRuntime: Process: com.celzero.bravedns, PID: 1160
11-13 11:15:26.936  1160  1160 E AndroidRuntime: java.lang.IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adapter positionTransactionViewHolder{e493ad5 position=2 id=-1, oldPos=3, pLpos:2 scrap [attachedScrap] tmpDetached no parent} com.simplecityapps.recyclerview_fastscroll.views.FastScrollRecyclerView{4e4d549 VFED..... ........ 0,161-1080,1319 #7f09058f app:id/recycler_query viewInfo = }, adapter:com.celzero.bravedns.adapter.DnsQueryAdapter@7670644, layout:androidx.recyclerview.widget.LinearLayoutManager@e24694e, context:com.celzero.bravedns.ui.activity.NetworkLogsActivity@7e3bd3
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at androidx.recyclerview.widget.RecyclerView$Recycler.validateViewHolderForOffsetPosition(RecyclerView.java:6590)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:6796)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6757)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6753)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2362)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1662)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1622)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:687)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep1(RecyclerView.java:4591)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:4346)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at androidx.recyclerview.widget.RecyclerView.consumePendingUpdateOperations(RecyclerView.java:2106)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at androidx.recyclerview.widget.RecyclerView$1.run(RecyclerView.java:468)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1544)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1553)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at android.view.Choreographer.doCallbacks(Choreographer.java:1109)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at android.view.Choreographer.doFrame(Choreographer.java:984)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1527)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at android.os.Handler.handleCallback(Handler.java:958)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at android.os.Handler.dispatchMessage(Handler.java:99)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at android.os.Looper.loopOnce(Looper.java:257)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at android.os.Looper.loop(Looper.java:368)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at android.app.ActivityThread.main(ActivityThread.java:8839)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at java.lang.reflect.Method.invoke(Native Method)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:572)
11-13 11:15:26.936  1160  1160 E AndroidRuntime: >--at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1049)
# event log
11-13 11:15:26.943  2080  6711 I am_crash: [
1160,0,com.celzero.bravedns,551075654,java.lang.IndexOutOfBoundsException,
Inconsistency detected. Invalid view holder adapter positionTransactionViewHolder {
  e493ad5 position=2 id=-1, oldPos=3, pLpos:2 scrap [attachedScrap] tmpDetached no parent
}
com.simplecityapps.recyclerview_fastscroll.views.FastScrollRecyclerView {
  4e4d549 VFED..... ........ 0,161-1080,1319 #7f09058f app:id/recycler_query viewInfo =
},
adapter:com.celzero.bravedns.adapter.DnsQueryAdapter@7670644, 
layout:androidx.recyclerview.widget.LinearLayoutManager@e24694e, 
context:com.celzero.bravedns.ui.activity.NetworkLogsActivity@7e3bd3,RecyclerView.java,6590,0
]