Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Null Avatar URL Exception On PeerTube / Youtube Subscriptions with a Blank Avatar #10863

Closed
6 tasks done
blrbrb opened this issue Mar 5, 2024 · 1 comment
Closed
6 tasks done
Labels
bug Issue is related to a bug channel Anything to do with creator channels in the app feed Issue is related to the feed multiservice Issues related to multiple services requires extractor change This issue requires a change to the extractor

Comments

@blrbrb
Copy link

blrbrb commented Mar 5, 2024

Checklist

  • I am able to reproduce the bug with the latest version given here: CLICK THIS LINK.
  • I made sure that there are no existing issues - open or closed - which I could contribute my information to.
  • I have read the FAQ and my problem isn't listed.
  • I have taken the time to fill in all the required details. I understand that the bug report will be dismissed otherwise.
  • This issue contains only one bug.
  • I have read and understood the contribution guidelines.

Affected version

0.26.1

Steps to reproduce the bug

  1. Subscribe to a PeerTube / Youtube channel that does not have a user-supplied avatar (blank avatar)
  2. Scroll up and release on the "What's New" page to initate feed refresh.

Expected behavior

The feed finishes refreshing without throwing an exception for subscriptions with blank / default avatars.

Actual behavior

The feed finishes loading, and then throws a Null Pointer exception from attempting to gather information about a subscription with a blank avatar.

Screenshots/Screen recordings

No response

Logs

Exception

  • User Action: requested feed
  • Request:
  • Content Country: US
  • Content Language: en-US
  • App Language: en_US
  • Service: none
  • Version: 0.26.1
  • OS: Linux samsung/a21sq/a21:12/SP1A.210812.016/A215USQUBCWG3:user/release-keys 12 - 31
Exceptions (5)

Crash log 1

org.schabi.newpipe.local.feed.service.FeedLoadService$RequestException: 3:https://pony.tube/video-channels/clipper
    at org.schabi.newpipe.local.feed.service.FeedLoadManager.loadStreams(FeedLoadManager.kt:229)
    at org.schabi.newpipe.local.feed.service.FeedLoadManager.access$loadStreams(FeedLoadManager.kt:33)
    at org.schabi.newpipe.local.feed.service.FeedLoadManager$startLoading$7.apply(FeedLoadManager.kt:113)
    at org.schabi.newpipe.local.feed.service.FeedLoadManager$startLoading$7.apply(FeedLoadManager.kt:112)
    at io.reactivex.rxjava3.internal.operators.parallel.ParallelMap$ParallelMapSubscriber.onNext(ParallelMap.java:116)
    at io.reactivex.rxjava3.internal.operators.parallel.ParallelFilter$ParallelFilterSubscriber.tryOnNext(ParallelFilter.java:132)
    at io.reactivex.rxjava3.internal.operators.parallel.ParallelRunOn$RunOnConditionalSubscriber.run(ParallelRunOn.java:399)
    at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:65)
    at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:56)
    at java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:307)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
    at java.lang.Thread.run(Thread.java:1012)
Caused by: java.lang.NullPointerException: (info as? ChannelInfo)?.…?: subscription.avatarUrl must not be null
    at org.schabi.newpipe.local.feed.service.FeedUpdateInfo.<init>(FeedUpdateInfo.kt:39)
    at org.schabi.newpipe.local.feed.service.FeedLoadManager.loadStreams(FeedLoadManager.kt:220)
    ... 13 more

Affected Android/Custom ROM version

Android 12

Affected device model

Samsung Galaxy A21 SM-A215U

Additional information

I have a suspicion that this issue is identical to #10778. The stack trace both resolve to the same Null Pointer Exception: Caused by: java.lang.NullPointerException: (info as? ChannelInfo)?.…?: subscription.avatarUrl must not be null issue.

The fact that #10778 is caused by a failure to fetch a blank avatar from a YouTube subscription, and in this case the same exception is thrown on a PeerTube channel might indicate that there need to be more robust extractor methods to handle this scenario in the future especially if it turns out to be a cross service issue.

thank you so much for your time and beautiful work!!

@blrbrb blrbrb added bug Issue is related to a bug needs triage Issue is not yet ready for PR authors to take up labels Mar 5, 2024
@opusforlife2
Copy link
Collaborator

Interesting! Nice to see new info about that bug.

@opusforlife2 opusforlife2 added requires extractor change This issue requires a change to the extractor multiservice Issues related to multiple services feed Issue is related to the feed channel Anything to do with creator channels in the app and removed needs triage Issue is not yet ready for PR authors to take up labels Mar 7, 2024
@Stypox
Copy link
Member

Stypox commented Apr 9, 2024

Could you test #10957?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Issue is related to a bug channel Anything to do with creator channels in the app feed Issue is related to the feed multiservice Issues related to multiple services requires extractor change This issue requires a change to the extractor
Projects
None yet
Development

No branches or pull requests

3 participants