ReadYouApp / ReadYouApp/ReadYou
subscribing to feed without Icon URL
Nobody has claimed this yet.
- Dominant language
- Kotlin
- Stars
- 7.5k
- Forks
- 330
- PR merge metrics
- No merged PRs in 30d
Description
works on version 99eca4b but seems there was a regression in latest nightly build 74d0c50
Version: 0.11.1
Device: Google Pixel 7
System: Android 15 (API 35)
Stack trace:
java.lang.NullPointerException: getUrl(...) must not be null
at me.ash.reader.infrastructure.rss.SyndFeedDelegate.getIconUrl(FetchedFeed.kt:13)
at me.ash.reader.ui.page.home.feeds.subscribe.SubscribeDialogKt$SubscribeDialog$3.invoke(SubscribeDialog.kt:5)
at me.ash.reader.ui.page.home.feeds.subscribe.SubscribeDialogKt$SubscribeDialog$3.invoke(SubscribeDialog.kt:1)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:7)
at androidx.compose.runtime.ComposerImpl.recomposeToGroupEnd(Composer.kt:585)
at androidx.compose.runtime.ComposerImpl.skipToGroupEnd(Composer.kt:29)
at androidx.compose.material3.AlertDialogKt.AlertDialogContent-4hvqGtA(AlertDialog.kt:372)
at androidx.compose.material3.AlertDialogKt$AlertDialogImpl$1.invoke(AlertDialog.kt:90)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:7)
at androidx.compose.material3.AlertDialogKt$BasicAlertDialog$1.invoke(AlertDialog.kt:177)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:7)
at androidx.compose.runtime.ComposerImpl.recomposeToGroupEnd(Composer.kt:585)
at androidx.compose.runtime.ComposerImpl.skipCurrentGroup(Composer.kt:137)
at androidx.compose.runtime.ComposerImpl.doCompose(Composer.kt:242)
at androidx.compose.runtime.ComposerImpl.recompose$runtime_release(Composer.kt:30)
at androidx.compose.runtime.CompositionImpl.recompose(Composition.kt:21)
at androidx.compose.runtime.Recomposer.access$performRecompose(Recomposer.kt:77)
at androidx.compose.runtime.Recomposer$runRecomposeAndApplyChanges$2$1.invoke(Recomposer.kt:553)
at androidx.compose.ui.platform.AndroidUiFrameClock$withFrameNanos$2$callback$1.doFrame(AndroidUiFrameClock.android.kt:7)
at androidx.compose.ui.platform.AndroidUiDispatcher$dispatchCallback$1.doFrame(AndroidUiDispatcher.android.kt:48)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1413)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1424)
at android.view.Choreographer.doCallbacks(Choreographer.java:1024)
at android.view.Choreographer.doFrame(Choreographer.java:949)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1398)
at android.os.Handler.handleCallback(Handler.java:991)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loopOnce(Looper.java:232)
at android.os.Looper.loop(Looper.java:317)
at android.app.ActivityThread.main(ActivityThread.java:8787)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:591)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:871)
Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [androidx.compose.runtime.PausableMonotonicFrameClock@4fee66b, androidx.compose.ui.platform.MotionDurationScaleImpl@c7ee5c8, StandaloneCoroutine{Cancelling}@cbaf661, AndroidUiDispatcher@2b2a586]
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at getIconUrl in Fetched.kt:13 and follow its use from SubscribeDialog.kt:5 during feed subscription. Reproduce with a feed that has no icon URL, then verify that the subscription dialog and subscription flow complete without the reported NullPointerException.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, kotlin
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100