Tuba
Tuba copied to clipboard
[Bug] App crashes when clicking on media
Describe the bug
App crashes whenever I try to open an image or reproduce a video. The logs don't show any error. Neither do the debug logs.
Steps To Reproduce
- Open app.
- Scroll to post with media.
- Click on media.
Logs and/or Screenshots
flatpak run dev.geopjr.Tuba
(dev.geopjr.Tuba:2): Tuba-WARNING **: <IP>: Image.vala:69: Failed to download image at "https://<DOMAIN>/system/cache/custom_emojis/images/000/189/436/original/27e501d38c7de12f.png": Unrecognized image file format
Screenshot
Instance Backend
Mastodon
Operating System
Ubuntu 20.04.6 LTS
Package
Flatpak
Troubleshooting information
G_MESSAGES_DEBUG=Tuba flatpak run dev.geopjr.Tuba
Application.vala:274: os: GNOME 48 (Flatpak runtime)
Application.vala:274: prefix: /app
Application.vala:274: flatpak: true
Application.vala:274: version: 0.9.2 (production)
Application.vala:274: gtk: 4.18.4 (4.18.4)
Application.vala:274: libadwaita: 1.7.2 (1.7.2)
Application.vala:274: libsoup: 3.6.5 (3.6.5)
Application.vala:274: libgtksourceview: 5.16.0 (5.16.0)
Application.vala:274: libspelling: true
Application.vala:274: Clapper: false
Application.vala:274: GStreamer: GStreamer 1.24.12 (1.12.24.0)
SecretAccountStore.vala:9: Using libsecret v0.21.7
Network.vala:65: GET: https://<DOMAIN>/api/v1/accounts/110660158601086887
Tuba-INFO: <IP>: Streams.vala:88: TubaMastodonAccount > https://<DOMAIN>/api/v1/streaming?stream=user:notification
Streams.vala:68: Opening stream: https://<DOMAIN>/api/v1/streaming?stream=user:notification
Network.vala:65: GET: https://<DOMAIN>/api/v1/markers?timeline[]=notifications
SecretAccountStore.vala:99: Loaded 1 accounts
AccountStore.vala:85: Activating @<USER>@<DOMAIN>…
Network.vala:65: GET: https://<DOMAIN>/api/v1/accounts/verify_credentials
Network.vala:65: GET: https://<DOMAIN>/api/v1/instance
Network.vala:65: GET: https://<DOMAIN>/api/v1/custom_emojis
Network.vala:65: GET: https://<DOMAIN>/api/v1/announcements
Application.vala:452: Presenting MainWindow
Streams.vala:88: TubaViewsHome > https://<DOMAIN>/api/v1/streaming?stream=user
(dev.geopjr.Tuba:2): Tuba-DEBUG: <IP>: Streams.vala:68: Opening stream: https://<DOMAIN>/api/v1/streaming?stream=user
Tuba-INFO: <IP>: Streams.vala:94: TubaViewsHome X https://<DOMAIN>/api/v1/streaming?stream=user
(dev.geopjr.Tuba:2): Tuba-DEBUG: <IP>: Streams.vala:99: Closing: https://<DOMAIN>/api/v1/streaming?stream=user
Tuba-INFO: <IP>: Streams.vala:88: TubaViewsHome > https://<DOMAIN>/api/v1/streaming?stream=user
(dev.geopjr.Tuba:2): Tuba-DEBUG: <IP>: Streams.vala:68: Opening stream: https://<DOMAIN>/api/v1/streaming?stream=user
Tuba-INFO: <IP>: Streams.vala:88: TubaViewsNotifications > https://<DOMAIN>/api/v1/streaming?stream=user:notification
Tuba-INFO: <IP>: Streams.vala:94: TubaViewsNotifications X https://<DOMAIN>/api/v1/streaming?stream=user:notification
Tuba-INFO: <IP>: Streams.vala:88: TubaViewsNotifications > https://<DOMAIN>/api/v1/streaming?stream=user:notification
Tuba-INFO: <IP>: Streams.vala:88: TubaViewsConversations > https://<DOMAIN>/api/v1/streaming?stream=direct
(dev.geopjr.Tuba:2): Tuba-DEBUG: <IP>: Streams.vala:68: Opening stream: https://<DOMAIN>/api/v1/streaming?stream=direct
Tuba-INFO: <IP>: Streams.vala:94: TubaViewsConversations X https://<DOMAIN>/api/v1/streaming?stream=direct
(dev.geopjr.Tuba:2): Tuba-DEBUG: <IP>: Streams.vala:99: Closing: https://<DOMAIN>/api/v1/streaming?stream=direct
Tuba-INFO: <IP>: Streams.vala:88: TubaViewsConversations > https://<DOMAIN>/api/v1/streaming?stream=direct
(dev.geopjr.Tuba:2): Tuba-DEBUG: <IP>: Streams.vala:68: Opening stream: https://<DOMAIN>/api/v1/streaming?stream=direct
(dev.geopjr.Tuba:2): Tuba-DEBUG: <IP>: Network.vala:65: GET: https://<DOMAIN>/api/v1/timelines/home?limit=20
(dev.geopjr.Tuba:2): Tuba-DEBUG: <IP>: Network.vala:65: GET: https://<DOMAIN>/api/v1/notifications?limit=20
(dev.geopjr.Tuba:2): Tuba-DEBUG: <IP>: Network.vala:65: GET: https://<DOMAIN>/api/v1/conversations?limit=20
(dev.geopjr.Tuba:2): Tuba-DEBUG: <IP>: InstanceAccount.vala:211: @<USER>@<DOMAIN>: profile updated
(dev.geopjr.Tuba:2): Tuba-DEBUG: <IP>: Network.vala:65: GET: https://<DOMAIN>/api/v1/notifications?min_id=3086170
(dev.geopjr.Tuba:2): Tuba-DEBUG: <IP>: Network.vala:65: GET: https://<DOMAIN>/api/v2/instance
(dev.geopjr.Tuba:2): Tuba-DEBUG: <IP> Network.vala:65: GET: https://<DOMAIN>/api/v1/accounts/relationships?id=111906660247153058
(dev.geopjr.Tuba:2): Tuba-DEBUG: <IP>: Network.vala:65: GET: https://<DOMAIN>/api/v1/accounts/relationships?id=111765506238344435
(dev.geopjr.Tuba:2): Tuba-DEBUG: <IP>: Network.vala:65: GET: https://<DOMAIN>/api/v1/accounts/relationships?id=108214551634536755
(dev.geopjr.Tuba:2): Tuba-WARNING **: <IP>: Image.vala:69: Failed to download image at "https://<DOMAIN>/system/cache/custom_emojis/images/000/189/436/original/27e501d38c7de12f.png": Unrecognized image file format
(dev.geopjr.Tuba:2): Tuba-DEBUG: <IP>: Network.vala:65: GET: https://<DOMAIN>/api/v1/timelines/home?limit=20&max_id=114591578066808255
Additional Context
No response
Thanks for the report!
My guess is that it has something to do with the graphics stack being very outdated on the host, but you can grab a stacktrace just to make sure:
-
$ flatpak install runtime/org.gnome.Sdk(if tuba was installed for the current user only, pass --user too) - From the list, select
runtime/org.gnome.Sdk/<arch>/48(<-- 48) -
$ flatpak install dev.geopjr.Tuba.Debug(if tuba was installed for the current user only, pass --user too) -
$ flatpak run --command=sh --devel dev.geopjr.Tuba -
[📦 dev.geopjr.Tuba ~]$ gdb /app/bin/dev.geopjr.Tuba -
(gdb) run - Reproduce it (if it doesn't crash, but only freeze, kill it with CtrlC)
-
(gdb) backtrace - Send back the log
- Feel free to remove the packages you installed above
(FWIW, what you are redacting with <IP> is actually the time)