You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I happened to stumble to a repeatable crasher when developing Spectral.
I have a 1-to-1 irc chat, which I left. For some reason it's still shown on the UI.
When trying to leave the chat for second time, Spectral crashes in libqmatrixclient code.
The root issue is probably bug in synapse, but libqtmatrix shouldn't crash.
Sorry for quite lousy bug report, it'll be difficult to repeat but at least you can review
the code.
My analysis on the crash is that d->connection in BaseJob.cpp:569 is null, but it's referenced.
In stack #4 connectdata.cpp:47 this is a null pointer, causing crash. Maybe check for it's nullness before calling?
Version information
The client application: Self-built Spectral
libqmatrixclient version if you know it: 23bf0e8 (Sun Jan 13 19:23:52 2019)
Qt version: 5.12 in /opt
Install method: Local build
Platform: Ubuntu 18.04
The text was updated successfully, but these errors were encountered:
Thanks; I really didn't handle errors from leaving a room correctly, they are fairly esoteric. Leaving a non-joined/unknown room is quite worth adding to the test suite though.
Huh, the call stack says that somebody connected abandon() to failure() which is generally incorrect (failure() means the job already finished and is about to self-destruct; you can't abandon it). I'll insert a guard with a warning so that abandon() exits with no action.
Description
I happened to stumble to a repeatable crasher when developing Spectral.
I have a 1-to-1 irc chat, which I left. For some reason it's still shown on the UI.
When trying to leave the chat for second time, Spectral crashes in libqmatrixclient code.
The root issue is probably bug in synapse, but libqtmatrix shouldn't crash.
Sorry for quite lousy bug report, it'll be difficult to repeat but at least you can review
the code.
Steps to reproduce
Select the person/room in Spectral, log output:
1 user(s) in the room
Connected to room "!XcyIhUpTmOiYnTDKEl:irc.snt.utwente.nl" as "@cos42:matrix.org"
libqmatrixclient.jobs: GetRoomEventsJob|https://matrix.org/_matrix/client/r0/rooms/!XcyIhUpTmOiYnTDKEl:irc.snt.utwente.nl/messages?from=&dir=b&limit=150
libqmatrixclient.jobs: 403 (tentative)
libqmatrixclient.jobs: "GetRoomEventsJob" status 103: Unknown error
libqmatrixclient.jobs: GetRoomEventsJob|https://matrix.org/_matrix/client/r0/rooms/!XcyIhUpTmOiYnTDKEl:irc.snt.utwente.nl/messages?from=&dir=b&limit=150
libqmatrixclient.jobs: 403 (final)
libqmatrixclient.jobs: "GetRoomEventsJob" status 103: Error transferring https://matrix.org/_matrix/client/r0/rooms/!XcyIhUpTmOiYnTDKEl:irc.snt.utwente.nl/messages?from=&dir=b&limit=150 - server replied:
libqmatrixclient.jobs: "GetRoomEventsJob" status 105: Guest access not allowed
Try to leave room, log output:
libqmatrixclient.jobs: LeaveRoomJob|https://matrix.org/_matrix/client/r0/rooms/!XcyIhUpTmOiYnTDKEl:irc.snt.utwente.nl/leave
libqmatrixclient.jobs: 404 (tentative)
libqmatrixclient.jobs: "LeaveRoomJob" status 104: Unknown error
libqmatrixclient.jobs: LeaveRoomJob|https://matrix.org/_matrix/client/r0/rooms/!XcyIhUpTmOiYnTDKEl:irc.snt.utwente.nl/leave
libqmatrixclient.jobs: 404 (final)
libqmatrixclient.jobs: "LeaveRoomJob" status 104: Error transferring https://matrix.org/_matrix/client/r0/rooms/!XcyIhUpTmOiYnTDKEl:irc.snt.utwente.nl/leave - server replied:
libqmatrixclient.jobs: "LeaveRoomJob" status 105: Not a known room
Spectral crashes in libqmatrixclient:
My analysis on the crash is that d->connection in BaseJob.cpp:569 is null, but it's referenced.
In stack #4 connectdata.cpp:47 this is a null pointer, causing crash. Maybe check for it's nullness before calling?
Version information
The text was updated successfully, but these errors were encountered: