Ashinch / ReadYou

An Android RSS reader presented in Material You style.
GNU General Public License v3.0
4.82k stars 188 forks source link

freeze on specific item in freshrss feed #780

Open quantenzitrone opened 3 months ago

quantenzitrone commented 3 months ago

1. Environment

2. Describe the bug

After adding https://analognowhere.com/feed/rss.xml to my FreshRSS feed, every time I scroll down, exactly when the analognowhere feed appears on sceen , Read You tries to open another app (judging from the animation) and freezes.

quantenzitrone commented 1 month ago

i actually didn't realize i hadn't scoop running all the time

here is the stacktrace:

FATAL EXCEPTION: main
Process: me.ash.reader, PID: 17167
java.lang.RuntimeException: Canvas: trying to draw too large(113763556bytes) bitmap.
    at android.view.DisplayListCanvas.throwIfCannotDraw(DisplayListCanvas.java:229)
    at android.view.RecordingCanvas.drawBitmap(RecordingCanvas.java:97)
    at androidx.compose.ui.graphics.AndroidCanvas.drawImageRect-HPBpro0(AndroidCanvas.android.kt:95)
    at androidx.compose.ui.graphics.drawscope.CanvasDrawScope.drawImage-AZ2fEMs(CanvasDrawScope.kt:34)
    at androidx.compose.ui.node.LayoutNodeDrawScope.drawImage-AZ2fEMs(LayoutNodeDrawScope.kt:25)
    at androidx.compose.ui.graphics.drawscope.DrawScope.drawImage-AZ2fEMs$default(DrawScope.kt:104)
    at androidx.compose.ui.graphics.painter.BitmapPainter.onDraw(BitmapPainter.kt:51)
    at androidx.compose.ui.graphics.painter.Painter.draw-x_KDEd0(Painter.kt:119)
    at coil.compose.CrossfadePainter.drawPainter(CrossfadePainter.kt:124)
    at coil.compose.CrossfadePainter.onDraw(CrossfadePainter.kt:80)
    at androidx.compose.ui.graphics.painter.Painter.draw-x_KDEd0(Painter.kt:119)
    at coil.compose.AsyncImagePainter.onDraw(AsyncImagePainter.kt:46)
    at androidx.compose.ui.graphics.painter.Painter.draw-x_KDEd0(Painter.kt:119)
    at androidx.compose.ui.draw.PainterNode.draw(PainterModifier.kt:184)
    at androidx.compose.ui.node.LayoutNodeDrawScope.drawDirect-x_KDEd0$ui_release(LayoutNodeDrawScope.kt:32)
    at androidx.compose.ui.node.NodeCoordinator.drawContainedDrawModifiers(NodeCoordinator.kt:50)
    at androidx.compose.ui.node.NodeCoordinator.draw(NodeCoordinator.kt:30)
    at androidx.compose.ui.node.LayoutModifierNodeCoordinator.performDraw(LayoutModifierNodeCoordinator.kt:6)
    at androidx.compose.ui.node.NodeCoordinator.drawContainedDrawModifiers(NodeCoordinator.kt:8)
    at androidx.compose.ui.node.NodeCoordinator$drawBlock$1$1.invoke(NodeCoordinator.kt:7)
    at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:60)
    at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:48)
    at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:153)
    at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:3)
    at androidx.compose.ui.node.NodeCoordinator$drawBlock$1.invoke(NodeCoordinator.kt:30)
    at androidx.compose.ui.platform.RenderNodeApi23.record(RenderNodeApi23.android.kt:45)
    at androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList(RenderNodeLayer.android.kt:40)
    at androidx.compose.ui.platform.AndroidComposeView.dispatchDraw(AndroidComposeView.android.kt:99)
    at android.view.View.draw(View.java:19323)
    at android.view.View.updateDisplayListIfDirty(View.java:18232)
    at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4281)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4261)
    at android.view.View.updateDisplayListIfDirty(View.java:18181)
    at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4281)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4261)
    at android.view.View.updateDisplayListIfDirty(View.java:18181)
    at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4281)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4261)
    at android.view.View.updateDisplayListIfDirty(View.java:18181)
    at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4281)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4261)
    at android.view.View.updateDisplayListIfDirty(View.java:18181)
    at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4281)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4261)
    at android.view.View.updateDisplayListIfDirty(View.java:18181)
    at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4281)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4261)
    at android.view.View.updateDisplayListIfDirty(View.java:18181)
    at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:669)
    at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:675)
    at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:783)
    at android.view.ViewRootImpl.draw(ViewRootImpl.java:3114)
    at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2923)
    at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2461)
    at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1443)
    at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7011)
    at android.view.Choreographer$CallbackRecord.run(Choreographer.java:916)
    at android.view.Choreographer.doCallbacks(Choreographer.java:728)
    at android.view.Choreographer.doFrame(Choreographer.java:660)
    at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:902)
    at android.os.Handler.handleCallback(Handler.java:790)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:164)
    at android.app.ActivityThread.main(ActivityThread.java:6548)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:857)
quantenzitrone commented 1 month ago

oh and this after a crash while in the background:

FATAL EXCEPTION: OkHttp TaskRunner
Process: me.ash.reader, PID: 17167
java.lang.InternalError: Thread starting during runtime shutdown
    at java.lang.Thread.nativeCreate(Native Method)
    at java.lang.Thread.start(Thread.java:733)
    at java.util.concurrent.ThreadPoolExecutor.addWorker(ThreadPoolExecutor.java:970)
    at java.util.concurrent.ThreadPoolExecutor.processWorkerExit(ThreadPoolExecutor.java:1038)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1180)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
    at java.lang.Thread.run(Thread.java:764)