Tuba icon indicating copy to clipboard operation
Tuba copied to clipboard

Crashes when loading Friendica feed

Open rifling962 opened this issue 3 months ago • 2 comments

Describe the bug

Whenever I switch to either the Explore or Federated feed on my Friendica account specifically, the app attempts to load the feed for a second or two before crashing.

Steps To Reproduce

  1. Open Tuba
  2. Open the sidebar
  3. (If needed) Switch to an account on a Friendica instance
  4. Click on either the "Explore" or "Federated" tab
  5. Wait a few seconds
  6. App crashes

Logs and/or Screenshots

<paste your logs here>

Instance Backend

I'm not sure / Other

Operating System

Fedora Linux 43

Package

OS repositories

Troubleshooting information

os: GNOME 49 (Flatpak runtime) prefix: /app flatpak: true version: 0.10.3 (production) gtk: 4.20.2 (4.20.1) libadwaita: 1.8.1 (1.8.0) libsoup: 3.6.5 (3.6.5) libgtksourceview: 5.18.0 (5.18.0) libspelling: true Clapper: 0.8.0 (0.8.0) GStreamer: GStreamer 1.26.7 (1.6.26.0) GExiv2: 1600 (0.16.0)

Additional Context

I already have three other accounts added to my app: two Mastodon and one Pixelfed. The profile picture of the Friendica account loads fine, the issue only occurs when I try to switch to that account.

rifling962 avatar Nov 22 '25 09:11 rifling962

Thanks for raising this issue! Can I have some logs please? G_MESSAGES_DEBUG=Tuba dev.geopjr.Tuba (or whatever command you use to launch tuba)

GeopJr avatar Nov 25 '25 20:11 GeopJr

Of course, here's what outputs to the terminal after running the app and having it crash:

MESA-INTEL: warning: ../src/intel/vulkan/anv_formats.c:949: FINISHME: support YUV colorspace with DRM format modifiers

(dev.geopjr.Tuba:2): Tuba-WARNING **: 23:44:46.060: Streams.vala:86: Error opening stream: The server did not accept the WebSocket handshake.

(dev.geopjr.Tuba:2): Tuba-WARNING **: 23:44:46.639: Streams.vala:86: Error opening stream: The server did not accept the WebSocket handshake.
**
ERROR:arraylist.c:745:gee_array_list_real_get: assertion failed: (index < _size)
Bail out! ERROR:arraylist.c:745:gee_array_list_real_get: assertion failed: (index < _size)

I also have found that the app is now able to load the home Friendica feed just fine, but when I navigate to "Explore" or "Federated" in the sidebar is when it tries to load then crashes (which is what these logs reflect).

Finally, for context, I'm not very experienced with or knowledgeable about software programming, so if this isn't what you're looking for, please let me know!

rifling962 avatar Nov 30 '25 07:11 rifling962

Commenting on this open thread as I am facing the same unexpected crash experience with Friendica, specifically, poliverso[.]org.

The steps to reproduce are nearly identical except that my instance does not even load the content and crashes directly.

The version of tuba I am running is 0.10.3 on FreeBSD

I ran the program within the lldb debugger with the following command: G_MESSAGES_DEBUG=Tuba lldb -- tuba I also ran bt to backtrace parts of the stack

Here is the output of my lldb debug run:

(tuba:86560): Tuba-DEBUG: 15:47:55.091: Application.vala:265: os: FreeBSD 15.0-RELEASE-p3
(tuba:86560): Tuba-DEBUG: 15:47:55.091: Application.vala:265: prefix: /usr/local
(tuba:86560): Tuba-DEBUG: 15:47:55.091: Application.vala:265: flatpak: false
(tuba:86560): Tuba-DEBUG: 15:47:55.091: Application.vala:265: version: 0.10.3 (production)
(tuba:86560): Tuba-DEBUG: 15:47:55.091: Application.vala:265: gtk: 4.18.6 (4.18.6)
(tuba:86560): Tuba-DEBUG: 15:47:55.091: Application.vala:265: libadwaita: 1.7.11 (1.7.11)
(tuba:86560): Tuba-DEBUG: 15:47:55.091: Application.vala:265: libsoup: 3.6.6 (3.6.6)
(tuba:86560): Tuba-DEBUG: 15:47:55.091: Application.vala:265: libgtksourceview: 5.14.2 (5.14.2)
(tuba:86560): Tuba-DEBUG: 15:47:55.091: Application.vala:265: libspelling: true
(tuba:86560): Tuba-DEBUG: 15:47:55.091: Application.vala:265: Clapper: 0.10.0 (0.10.0)
(tuba:86560): Tuba-DEBUG: 15:47:55.091: Application.vala:265: GStreamer: GStreamer 1.28.0 (1.0.28.0)
(tuba:86560): Tuba-DEBUG: 15:47:55.091: Application.vala:265: GExiv2: false
(tuba:86560): Tuba-DEBUG: 15:47:55.105: SecretAccountStore.vala:9: Using libsecret v0.21.7

[Removed superfluous logs straight to account change from (functioning) fosstodon to (crashing) friendica]

(tuba:86560): Tuba-DEBUG: 15:48:04.925: Streams.vala:107: Closing: https://fosstodon.org/api/v1/streaming?stream=direct
Tuba-INFO: 15:48:04.925: Streams.vala:96: TubaViewsConversations > https://poliverso.org/api/v1/streaming?stream=direct
(tuba:86560): Tuba-DEBUG: 15:48:04.925: Streams.vala:76: Opening stream: https://poliverso.org/api/v1/streaming?stream=direct
(tuba:86560): Tuba-DEBUG: 15:48:04.930: Network.vala:65: GET: https://poliverso.org/api/v1/timelines/home?limit=20
(tuba:86560): Tuba-DEBUG: 15:48:04.930: Network.vala:65: GET: https://poliverso.org/api/v1/notifications?limit=20
(tuba:86560): Tuba-DEBUG: 15:48:04.930: Network.vala:65: GET: https://poliverso.org/api/v1/conversations?limit=20

(tuba:86560): Tuba-WARNING **: 15:48:05.058: Streams.vala:86: Error opening stream: The server did not accept the WebSocket handshake.

(tuba:86560): Tuba-WARNING **: 15:48:05.089: Streams.vala:86: Error opening stream: The server did not accept the WebSocket handshake.
(tuba:86560): Tuba-DEBUG: 15:48:05.122: InstanceAccount.vala:297: @[REDACTED]@poliverso.org: profile updated
(tuba:86560): Tuba-DEBUG: 15:48:05.301: Network.vala:65: GET: https://poliverso.org/api/v2/instance
**
ERROR:arraylist.c:745:gee_array_list_real_get: assertion failed: (index < _size)
Bail out! ERROR:arraylist.c:745:gee_array_list_real_get: assertion failed: (index < _size)
Process 86560 stopped
* thread #1, name = 'tuba', stop reason = signal SIGABRT
    frame #0: 0x0000000847cd39ea libsys.so.7`__sys_thr_kill at thr_kill.S:4
(lldb) bt
* thread #1, name = 'tuba', stop reason = signal SIGABRT
  * frame #0: 0x0000000847cd39ea libsys.so.7`__sys_thr_kill at thr_kill.S:4
    frame #1: 0x000000082e7b8894 libc.so.7`__raise(s=6) at raise.c:48:10
    frame #2: 0x000000082e86a6f9 libc.so.7`abort at abort.c:61:8
    frame #3: 0x00000008235d74c0 libglib-2.0.so.0`g_assertion_message + 416
    frame #4: 0x00000008235d7534 libglib-2.0.so.0`g_assertion_message_expr + 116
    frame #5: 0x0000000822972905 libgee-0.8.so.2`___lldb_unnamed_symbol1556 + 117
    frame #6: 0x00000000004470a0 tuba`___lldb_unnamed_symbol9232 + 1376
    frame #7: 0x000000000036aefc tuba`___lldb_unnamed_symbol5065 + 60
    frame #8: 0x000000000045ca11 tuba`___lldb_unnamed_symbol9571 + 5777
    frame #9: 0x00000000004588fc tuba`___lldb_unnamed_symbol9529 + 140
    frame #10: 0x000000082534dac1 libgobject-2.0.so.0`___lldb_unnamed_symbol966 + 177
    frame #11: 0x0000000825352e59 libgobject-2.0.so.0`___lldb_unnamed_symbol985 + 825
    frame #12: 0x000000082534d02b libgobject-2.0.so.0`g_object_new_valist + 1579
    frame #13: 0x000000082534c6f4 libgobject-2.0.so.0`g_object_new + 148
    frame #14: 0x0000000000443d67 tuba`___lldb_unnamed_symbol9184 + 503
    frame #15: 0x000000000033f4cd tuba`___lldb_unnamed_symbol3780 + 701
    frame #16: 0x00000000003e6a2c tuba`___lldb_unnamed_symbol7377 + 76
    frame #17: 0x00000008286692e5 libgtk-4.so.1`___lldb_unnamed_symbol13534 + 165
    frame #18: 0x0000000825345c41 libgobject-2.0.so.0`g_closure_invoke + 241
    frame #19: 0x00000008253609e9 libgobject-2.0.so.0`___lldb_unnamed_symbol1145 + 1833
    frame #20: 0x000000082535f5b8 libgobject-2.0.so.0`___lldb_unnamed_symbol1139 + 2392
    frame #21: 0x000000082535fd0c libgobject-2.0.so.0`g_signal_emit + 172
    frame #22: 0x000000082583a435 libgio-2.0.so.0`g_list_store_splice + 421
    frame #23: 0x0000000000420749 tuba`___lldb_unnamed_symbol8437 + 249
    frame #24: 0x00000000003c9554 tuba`___lldb_unnamed_symbol6746 + 676
    frame #25: 0x00000008258245b8 libgio-2.0.so.0`___lldb_unnamed_symbol5697 + 40
    frame #26: 0x0000000825822e86 libgio-2.0.so.0`___lldb_unnamed_symbol5680 + 294
    frame #27: 0x0000000824ac32bd libsoup-3.0.so.0`___lldb_unnamed_symbol3100 + 173
    frame #28: 0x0000000824ac41bd libsoup-3.0.so.0`___lldb_unnamed_symbol3113 + 349
    frame #29: 0x00000008258245b8 libgio-2.0.so.0`___lldb_unnamed_symbol5697 + 40
    frame #30: 0x0000000825822e86 libgio-2.0.so.0`___lldb_unnamed_symbol5680 + 294
    frame #31: 0x0000000824a8d5cd libsoup-3.0.so.0`___lldb_unnamed_symbol2382 + 141
    frame #32: 0x0000000824a8d6d9 libsoup-3.0.so.0`___lldb_unnamed_symbol2383 + 25
    frame #33: 0x00000008235ab081 libglib-2.0.so.0`___lldb_unnamed_symbol2555 + 369
    frame #34: 0x00000008235ab516 libglib-2.0.so.0`___lldb_unnamed_symbol2556 + 774
    frame #35: 0x00000008235ab5b6 libglib-2.0.so.0`g_main_context_iteration + 102
    frame #36: 0x00000008258510cd libgio-2.0.so.0`g_application_run + 525
    frame #37: 0x000000000031ad54 tuba`___lldb_unnamed_symbol2835 + 708
    frame #38: 0x000000082e78d37f libc.so.7`__libc_start1(argc=1, argv=0x0000000820c8e858, env=0x0000000820c8e868, cleanup=<unavailable>, mainX=(tuba`___lldb_unnamed_symbol2835)) at libc_start1.c:180:7
    frame #39: 0x000000000031a3a4 tuba`___lldb_unnamed_symbol2819 + 36
(lldb)

GiorgioCaculli avatar Feb 27 '26 16:02 GiorgioCaculli