strawberrymusicplayer / strawberry

:strawberry: Strawberry Music Player
https://www.strawberrymusicplayer.org/
GNU General Public License v3.0
2.74k stars 191 forks source link

Strawberry crashes seemingly randomly while playing music. Qt 6 bug: QTBUG-92188 #670

Closed RillingDev closed 3 years ago

RillingDev commented 3 years ago

Check the Changelog to see if the issue is already fixed: https://github.com/strawberrymusicplayer/strawberry/blob/master/Changelog

-> did not see issue description matching this one. Tested with Strawberry-0.9.1-26-gb224aeb0-Qt6-x86_64.AppImage and had another crash.

Describe the bug Strawberry crashes seemingly randomly playing music. I know that is very general but I thought i create an issue to track this in case others have the same issue and have noticed a pattern. The following core dump backtrace data is available:

Core was generated by `/usr/bin/strawberry'.
Program terminated with signal SIGABRT, Aborted.
#0  0x00007f9843bdcef5 in raise () from /usr/lib/libc.so.6
[Current thread is 1 (Thread 0x7f983bf9dcc0 (LWP 7407))]
(gdb) bt
#0  0x00007f9843bdcef5 in raise () at /usr/lib/libc.so.6
#1  0x00007f9843bc6862 in abort () at /usr/lib/libc.so.6
#2  0x00007f9843c1ef38 in __libc_message () at /usr/lib/libc.so.6
#3  0x00007f9843cae8ba in __fortify_fail () at /usr/lib/libc.so.6
#4  0x00007f9843cae884 in  () at /usr/lib/libc.so.6
#5  0x00007f9843c28638 in _int_free () at /usr/lib/libc.so.6
#6  0x00007f9843c2bca8 in free () at /usr/lib/libc.so.6
#7  0x00007f98459aac62 in  () at /usr/lib/libQt6Gui.so.6
#8  0x00007f9845872cd8 in QImage::smoothScaled(int, int) const () at /usr/lib/libQt6Gui.so.6
#9  0x00007f9845878023 in QImage::transformed(QTransform const&, Qt::TransformationMode) const () at /usr/lib/libQt6Gui.so.6
#10 0x00007f9845878697 in QImage::scaled(QSize const&, Qt::AspectRatioMode, Qt::TransformationMode) const () at /usr/lib/libQt6Gui.so.6
#11 0x00005634b04000ad in ImageUtils::ScaleAndPad(QImage const&, bool, bool, int) ()
#12 0x00005634b025e5c2 in PlayingWidget::ScaleCover() ()
#13 0x00005634b025f533 in PlayingWidget::SetImage(QImage const&) ()
#14 0x00007f9844ded711 in  () at /usr/lib/libQt6Core.so.6
#15 0x00005634b03ad4b8 in MainWindow::AlbumCoverReady(Song, QImage) ()
#16 0x00005634affbda2b in MainWindow::AlbumCoverLoaded(Song const&, AlbumCoverLoaderResult const&) ()
#17 0x00007f9844ded711 in  () at /usr/lib/libQt6Core.so.6
#18 0x00005634b03c7d28 in CurrentAlbumCoverLoader::AlbumCoverLoaded(Song, AlbumCoverLoaderResult) ()
#19 0x00005634b018f55e in CurrentAlbumCoverLoader::TempAlbumCoverLoaded(unsigned long long, AlbumCoverLoaderResult) ()
#20 0x00005634b01901df in QtPrivate::QSlotObject<void (CurrentAlbumCoverLoader::*)(unsigned long long, AlbumCoverLoaderResult), QtPrivate::List<unsigned long long, AlbumCoverLoaderResult>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) ()
#21 0x00007f9844dddb10 in QObject::event(QEvent*) () at /usr/lib/libQt6Core.so.6
#22 0x00007f984609e6a5 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt6Widgets.so.6
#23 0x00007f9844b6aaca in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt6Core.so.6
#24 0x00007f9844b6dafd in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib/libQt6Core.so.6
#25 0x00007f9844db02f4 in  () at /usr/lib/libQt6Core.so.6
#26 0x00007f9843fa0044 in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#27 0x00007f9843ff5e61 in  () at /usr/lib/libglib-2.0.so.0
#28 0x00007f9843f9d6d1 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#29 0x00007f9844dafbfb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt6Core.so.6
#30 0x00007f9844b7702c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt6Core.so.6
#31 0x00007f9844b72f73 in QCoreApplication::exec() () at /usr/lib/libQt6Core.so.6
#32 0x00005634affb0df2 in main ()

To Reproduce Keep strawberry running playing music? see above, I have not found a consistent way to reproduce this yet.

Expected behavior Strawberry does not crash,

Screenshots: n/a

System Information:

Additional context If the full 1GB core dump is useful, please tell me so I can send it to whoever investigates

jonaski commented 3 years ago

I'm pretty sure I saw the exact same assertion while I was working on the cover manager and tag editor. However I could only reproduce it with Qt 6. But it disappeared so I thought it was a Qt bug that had been fixed in Qt 6.0.2. I can no longer reproduce it, and it has not crashed for me for weeks, but I run the Qt dev branch on my main music PC, which is Qt 6.2, on the development machine I currently have 6.0.2, but no problems there either.

RillingDev commented 3 years ago

Hmm, interesting. As I could not find an easy way to use a newer version of Qt on my system without some work, I will try to update this issue once a newer Qt version becomes available for my system.

jonaski commented 3 years ago

I downgraded Qt on my music box to 6.0.2 but still can't reproduce a crash, can you tell if it's crashing on a specific album cover or not? The backtrace is showing ImageUtils::ScaleAndPad, which is used all over the place in strawberry to scale and pad covers. But I can't see anything wrong with the code there. You can probably reproduce it more easily if you try open the cover manager so that all the covers are loaded.

RillingDev commented 3 years ago

Opening the cover manager does not cause any crashes, Interestingly the same track+cover that works fine one time crashes randomly another time, so I doubt its related to a specific cover.

However, I ran tests with verbose logging and the one time i got the crash the following was logged before the core was dumped: "**** stack smashing detected ***". Maybe that helps trace down the issue.

jonaski commented 3 years ago

Ah! It's because they compile with stack protection.

jonaski commented 3 years ago

I can't reproduce this, even when compiling with -fstack-protector-all and -fstack-protector-strong.

RillingDev commented 3 years ago

What a weird and specific issue this is then 😅. Here is more of the verbose log when a crash happens:

16:48:37.422 DEBUG GstEngine:975                    Got stream info for "file://./music/Zeds%20Dead/Somewhere%20Else/01%20Zeds%20Dead%20feat.%20Memorecks%20-%20Collapse.flac:" "FLAC"
16:48:47.086 DEBUG _MessageReplyBase:30             Waiting on ID 4
16:48:47.087 DEBUG TagReader:692                    Loading art from "./music/Zeds Dead/Somewhere Else/01 Zeds Dead feat. Memorecks - Collapse.flac"
16:48:47.087 DEBUG MainWindow:1308                  Song changed to "Zeds Dead feat. Memorecks" "Somewhere Else" "Collapse"
16:48:47.088 WARN  IconLoader:88                    Can't use system icon for "gstreamer" icon does not have fixed size. 32
16:48:47.088 DEBUG MessageReply<MessageType>:89     Releasing ID 4 (finished)
16:48:47.088 DEBUG _MessageReplyBase:32             Acquired ID 4
16:48:47.092 DEBUG MusixmatchLyricsProvider:91      MusixmatchLyrics: Sending request for "zeds-dead" "collapse" QUrl("https://www.musixmatch.com/lyrics/zeds-dead/collapse")
16:48:47.094 DEBUG Player:623                       Playing song "Collapse" QUrl("file://./music/Zeds Dead/Somewhere Else/01 Zeds Dead feat. Memorecks - Collapse.flac")
16:48:47.094 DEBUG GstEnginePipeline:465            2 event latency
*** stack smashing detected ***: terminated
zsh: abort (core dumped)  strawberry --verbose

(As noted before, this specific track for example works without issues if i play it after the crash)

I will also upload the full core dump and DM you a link, maybe that helps.

Thanks for investing time in this issue by the way, even if it seems very hard to analyse!

jonaski commented 3 years ago

I suspect the bug is in Qt 6. I opened a bug report here: https://bugreports.qt.io/browse/QTBUG-92188

jonaski commented 3 years ago

I was working on a different program over the weekend, and I can reproduce the same crash with Qt 6.0.2 pretty consistently when I run the program in Qt Creator debug. But if I try to run some QImage::scale code in a loop on it's own I can't reproduce it, so it looks to be in combination with something else. The program is here: https://github.com/jonaski/qtgiphy It's a program that displays GIF's from giphy.com

aminvakil commented 3 years ago

Same issue I guess, running strawberry 0.9.2, qt6-base 6.0.3.

systemd-coredump[9027]: Process 3051 (strawberry) of user 1000 dumped core.

                                                Stack trace of thread 15:
                                                #0  0x0000683603014ef5 raise (libc.so.6 + 0x3cef5)
                                                #1  0x0000683602ffe862 abort (libc.so.6 + 0x26862)
                                                #2  0x0000683603056f38 __libc_message (libc.so.6 + 0x7ef38)
                                                #3  0x00006836030e68ba __fortify_fail (libc.so.6 + 0x10e8ba)
                                                #4  0x00006836030e6884 __stack_chk_fail (libc.so.6 + 0x10e884)
                                                #5  0x0000683603060638 _int_free (libc.so.6 + 0x88638)
                                                #6  0x0000683603063ca8 __libc_free (libc.so.6 + 0x8bca8)
                                                #7  0x0000683604e00d42 n/a (libQt6Gui.so.6 + 0x295d42)
                                                #8  0x0000683604cc8ce8 _ZNK6QImage12smoothScaledEii (libQt6Gui.so.6 + 0x15dce8)
                                                #9  0x0000683604cce033 _ZNK6QImage11transformedERK10QTransformN2Qt18TransformationModeE (libQt6Gui.so.6 + 0x163033)
                                                #10 0x0000683604cce6a7 _ZNK6QImage6scaledERK5QSizeN2Qt15AspectRatioModeENS3_18TransformationModeE (libQt6Gui.so.6 + 0x1636a7)
                                                #11 0x00000eb2c1515fbd _ZN10ImageUtils11ScaleAndPadERK6QImagebbi (strawberry + 0x6d2fbd)
                                                #12 0x00000eb2c13767f0 _ZN13PlayingWidget10ScaleCoverEv (strawberry + 0x5337f0)
                                                #13 0x00000eb2c13769a9 _ZN13PlayingWidget12UpdateHeightEv (strawberry + 0x5339a9)
                                                #14 0x00000eb2c13774a9 _ZN13PlayingWidget17UpdateDetailsTextEv (strawberry + 0x5344a9)
                                                #15 0x00006836042437a1 n/a (libQt6Core.so.6 + 0x3db7a1)
                                                #16 0x00000eb2c14d4d56 _ZN24PlaylistManagerInterface18CurrentSongChangedE4Song (strawberry + 0x691d56)
                                                #17 0x00000eb2c12268a8 _ZN9QtPrivate11QSlotObjectIM24PlaylistManagerInterfaceFv4SongENS_4ListIJS2_EEEvE4implEiPNS_15QSlotObjectBaseEP7QObjectPPvPb (strawberry + 0x3e38a8)
                                                #18 0x00006836042437a1 n/a (libQt6Core.so.6 + 0x3db7a1)
                                                #19 0x00000eb2c14d1cf6 _ZN8Playlist18CurrentSongChangedE4Song (strawberry + 0x68ecf6)
                                                #20 0x00000eb2c11e8f88 _ZN8Playlist25InformOfCurrentSongChangeENS_10AutoScrollEb (strawberry + 0x3a5f88)
                                                #21 0x00000eb2c11f37af _ZN8Playlist15set_current_rowEiNS_10AutoScrollEbb (strawberry + 0x3b07af)
                                                #22 0x00000eb2c1110d47 _ZN6Player6PlayAtEi6QFlagsIN6Engine15TrackChangeTypeEEN8Playlist10AutoScrollEbb (strawberry + 0x2cdd47)
                                                #23 0x00006836042437a1 n/a (libQt6Core.so.6 + 0x3db7a1)
                                                #24 0x00000eb2c14d4e8c _ZN24PlaylistManagerInterface13PlayRequestedE11QModelIndexN8Playlist10AutoScrollE (strawberry + 0x691e8c)
                                                #25 0x00000eb2c1226a43 _ZN9QtPrivate11QSlotObjectIM24PlaylistManagerInterfaceFv11QModelIndexN8Playlist10AutoScrollEENS_4ListIJS2_S4_EEEvE4implEiPNS_15QSlotObjectBaseEP7QObjectPPvPb (straw>
                                                #26 0x00006836042437a1 n/a (libQt6Core.so.6 + 0x3db7a1)
                                                #27 0x00000eb2c14d1e2c _ZN8Playlist13PlayRequestedE11QModelIndexNS_10AutoScrollE (strawberry + 0x68ee2c)
                                                #28 0x00000eb2c11f479c _ZN8Playlist11InsertItemsERK5QListISt10shared_ptrI12PlaylistItemEEibbb (strawberry + 0x3b179c)
                                                #29 0x00000eb2c1207de9 _ZN8Playlist15InsertSongItemsI22CollectionPlaylistItemEEvRK5QListI4SongEibbb (strawberry + 0x3c4de9)
                                                #30 0x00000eb2c11f52f4 _ZN8Playlist12dropMimeDataEPK9QMimeDataN2Qt10DropActionEiiRK11QModelIndex (strawberry + 0x3b22f4)
                                                #31 0x00000eb2c10d7948 _ZN10MainWindow13AddToPlaylistEP9QMimeData (strawberry + 0x294948)
                                                #32 0x00006836042437a1 n/a (libQt6Core.so.6 + 0x3db7a1)
                                                #33 0x00000eb2c14e6440 _ZN21AutoExpandingTreeView19AddToPlaylistSignalEP9QMimeData (strawberry + 0x6a3440)
                                                #34 0x00006836042437a1 n/a (libQt6Core.so.6 + 0x3db7a1)
                                                #35 0x00006836057a5816 _ZN17QAbstractItemView13doubleClickedERK11QModelIndex (libQt6Widgets.so.6 + 0x413816)
                                                #36 0x00000eb2c136513c _ZN21AutoExpandingTreeView21mouseDoubleClickEventEP11QMouseEvent (strawberry + 0x52213c)
                                                #37 0x000068360554cfd2 _ZN7QWidget5eventEP6QEvent (libQt6Widgets.so.6 + 0x1bafd2)
                                                #38 0x00006836055e98b3 _ZN6QFrame5eventEP6QEvent (libQt6Widgets.so.6 + 0x2578b3)
                                                #39 0x0000683603fc0853 _ZN23QCoreApplicationPrivate29sendThroughObjectEventFiltersEP7QObjectP6QEvent (libQt6Core.so.6 + 0x158853)
                                                #40 0x00006836054f4694 _ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent (libQt6Widgets.so.6 + 0x162694)
                                                #41 0x00006836054fe842 _ZN12QApplication6notifyEP7QObjectP6QEvent (libQt6Widgets.so.6 + 0x16c842)
                                                #42 0x0000683603fc0aca _ZN16QCoreApplication15notifyInternal2EP7QObjectP6QEvent (libQt6Core.so.6 + 0x158aca)
                                                #43 0x00006836054fd96c _ZN19QApplicationPrivate14sendMouseEventEP7QWidgetP11QMouseEventS1_S1_PS1_R8QPointerIS0_Ebb (libQt6Widgets.so.6 + 0x16b96c)
                                                #44 0x000068360555ed02 n/a (libQt6Widgets.so.6 + 0x1ccd02)
                                                #45 0x0000683605561b9f n/a (libQt6Widgets.so.6 + 0x1cfb9f)
                                                #46 0x00006836054f46a5 _ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent (libQt6Widgets.so.6 + 0x1626a5)
                                                #47 0x0000683603fc0aca _ZN16QCoreApplication15notifyInternal2EP7QObjectP6QEvent (libQt6Core.so.6 + 0x158aca)
                                                #48 0x0000683604d2cd5a _ZN22QGuiApplicationPrivate17processMouseEventEPN29QWindowSystemInterfacePrivate10MouseEventE (libQt6Gui.so.6 + 0x1c1d5a)
                                                #49 0x0000683604d71ca5 _ZN22QWindowSystemInterface22sendWindowSystemEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Gui.so.6 + 0x206ca5)
                                                #50 0x00006835fadbc75c n/a (libQt6XcbQpa.so.6 + 0x4f75c)
                                                #51 0x00006836033d7f9c g_main_context_dispatch (libglib-2.0.so.0 + 0x53f9c)
                                                #52 0x000068360342ba49 n/a (libglib-2.0.so.0 + 0xa7a49)
                                                #53 0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #54 0x0000683604205c8b _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x39dc8b)
                                                #55 0x0000683603fcd02c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x16502c)
                                                #56 0x0000683603fc8f73 _ZN16QCoreApplication4execEv (libQt6Core.so.6 + 0x160f73)
                                                #57 0x00000eb2c10c9612 main (strawberry + 0x286612)
                                                #58 0x0000683602fffb25 __libc_start_main (libc.so.6 + 0x27b25)
                                                #59 0x00000eb2c10d1b3e _start (strawberry + 0x28eb3e)

                                                Stack trace of thread 197:
                                                #0  0x0000683602b8a9ba __futex_abstimed_wait_common64 (libpthread.so.0 + 0x159ba)
                                                #1  0x0000683602b84574 pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf574)
                                                #2  0x0000683604138b40 _ZN14QWaitCondition4waitEP6QMutex14QDeadlineTimer (libQt6Core.so.6 + 0x2d0b40)
                                                #3  0x00006836041361b1 n/a (libQt6Core.so.6 + 0x2ce1b1)
                                                #4  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #5  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #6  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 90:
                                                #0  0x00006836030cc37f __poll (libc.so.6 + 0xf437f)
                                                #1  0x000068360342b9d8 n/a (libglib-2.0.so.0 + 0xa79d8)
                                                #2  0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #3  0x0000683604205caf _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x39dcaf)
                                                #4  0x0000683603fcd02c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x16502c)
                                                #5  0x00006836040c01ba _ZN7QThread4execEv (libQt6Core.so.6 + 0x2581ba)
                                                #6  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #7  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #8  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 203:
                                                #0  0x0000683602b8a9ba __futex_abstimed_wait_common64 (libpthread.so.0 + 0x159ba)
                                                #1  0x0000683602b84574 pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf574)
                                                #2  0x0000683604138b40 _ZN14QWaitCondition4waitEP6QMutex14QDeadlineTimer (libQt6Core.so.6 + 0x2d0b40)
                                                #3  0x00006836041361b1 n/a (libQt6Core.so.6 + 0x2ce1b1)
                                                #4  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #5  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #6  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 198:
                                                #0  0x0000683602b8a9ba __futex_abstimed_wait_common64 (libpthread.so.0 + 0x159ba)
                                                #1  0x0000683602b84574 pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf574)
                                                #2  0x0000683604138b40 _ZN14QWaitCondition4waitEP6QMutex14QDeadlineTimer (libQt6Core.so.6 + 0x2d0b40)
                                                #3  0x00006836041361b1 n/a (libQt6Core.so.6 + 0x2ce1b1)
                                                #4  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #5  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #6  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 39:
                                                #0  0x00006836030cc37f __poll (libc.so.6 + 0xf437f)
                                                #1  0x000068360342b9d8 n/a (libglib-2.0.so.0 + 0xa79d8)
                                                #2  0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #3  0x00006836033d5742 n/a (libglib-2.0.so.0 + 0x51742)
                                                #4  0x0000683603405fb1 n/a (libglib-2.0.so.0 + 0x81fb1)
                                                #5  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #6  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 200:
                                                #0  0x0000683602b8a9ba __futex_abstimed_wait_common64 (libpthread.so.0 + 0x159ba)
                                                #1  0x0000683602b84574 pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf574)
                                                #2  0x0000683604138b40 _ZN14QWaitCondition4waitEP6QMutex14QDeadlineTimer (libQt6Core.so.6 + 0x2d0b40)
                                                #3  0x00006836041361b1 n/a (libQt6Core.so.6 + 0x2ce1b1)
                                                #4  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #5  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #6  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 17:
                                                #0  0x00006836030cedab fdatasync (libc.so.6 + 0xf6dab)
                                                #1  0x0000683605c58fa3 n/a (libsqlite3.so.0 + 0xa1fa3)
                                                #2  0x0000683605c5c46b n/a (libsqlite3.so.0 + 0xa546b)
                                                #3  0x0000683605c5fb5b sqlite3PagerCommitPhaseOne (libsqlite3.so.0 + 0xa8b5b)
                                                #4  0x0000683605beafe3 sqlite3BtreeCommitPhaseOne (libsqlite3.so.0 + 0x33fe3)
                                                #5  0x0000683605c9a547 sqlite3VdbeHalt (libsqlite3.so.0 + 0xe3547)
                                                #6  0x0000683605c9036a sqlite3VdbeExec (libsqlite3.so.0 + 0xd936a)
                                                #7  0x0000683605c948c8 sqlite3_step (libsqlite3.so.0 + 0xdd8c8)
                                                #8  0x00006835fa45dee9 n/a (libqsqlite.so + 0x9ee9)
                                                #9  0x00006835fa45ff3a n/a (libqsqlite.so + 0xbf3a)
                                                #10 0x00006835fa45f611 n/a (libqsqlite.so + 0xb611)
                                                #11 0x00000eb2c11744cc _ZN17ScopedTransaction6CommitEv (strawberry + 0x3314cc)
                                                #12 0x00000eb2c120ab34 _ZN15PlaylistBackend12SavePlaylistEiRK5QListISt10shared_ptrI12PlaylistItemEEiS1_I17PlaylistGeneratorE (strawberry + 0x3c7b34)
                                                #13 0x00000eb2c14d3034 n/a (strawberry + 0x690034)
                                                #14 0x0000683604233ba0 _ZN7QObject5eventEP6QEvent (libQt6Core.so.6 + 0x3cbba0)
                                                #15 0x00006836054f46a5 _ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent (libQt6Widgets.so.6 + 0x1626a5)
                                                #16 0x0000683603fc0aca _ZN16QCoreApplication15notifyInternal2EP7QObjectP6QEvent (libQt6Core.so.6 + 0x158aca)
                                                #17 0x0000683603fc3afd _ZN23QCoreApplicationPrivate16sendPostedEventsEP7QObjectiP11QThreadData (libQt6Core.so.6 + 0x15bafd)
                                                #18 0x0000683604206384 n/a (libQt6Core.so.6 + 0x39e384)
                                                #19 0x00006836033d7f9c g_main_context_dispatch (libglib-2.0.so.0 + 0x53f9c)
                                                #20 0x000068360342ba49 n/a (libglib-2.0.so.0 + 0xa7a49)
                                                #21 0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #22 0x0000683604205c8b _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x39dc8b)
                                                #23 0x0000683603fcd02c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x16502c)
                                                #24 0x00006836040c01ba _ZN7QThread4execEv (libQt6Core.so.6 + 0x2581ba)
                                                #25 0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #26 0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #27 0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 37:
                                                #0  0x00006836030cc37f __poll (libc.so.6 + 0xf437f)
                                                #1  0x000068360342b9d8 n/a (libglib-2.0.so.0 + 0xa79d8)
                                                #2  0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #3  0x0000683604205c8b _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x39dc8b)
                                                #4  0x0000683603fcd02c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x16502c)
                                                #5  0x00006836040c01ba _ZN7QThread4execEv (libQt6Core.so.6 + 0x2581ba)
                                                #6  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #7  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #8  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 18:
                                                #0  0x00006835fff142f6 n/a (libjpeg.so.8 + 0x1d2f6)
                                                #1  0x00006835fff0f657 n/a (libjpeg.so.8 + 0x18657)
                                                #2  0x00006835fff15d7e n/a (libjpeg.so.8 + 0x1ed7e)
                                                #3  0x00006835fff0e233 jpeg_read_scanlines (libjpeg.so.8 + 0x17233)
                                                #4  0x00006835f9bd6a93 n/a (libqjpeg.so + 0x4a93)
                                                #5  0x00006835f9bd7327 n/a (libqjpeg.so + 0x5327)
                                                #6  0x0000683604ce5b54 _ZN12QImageReader4readEP6QImage (libQt6Gui.so.6 + 0x17ab54)
                                                #7  0x0000683604ce6377 _ZN12QImageReader4readEv (libQt6Gui.so.6 + 0x17b377)
                                                #8  0x0000683604ccf02b _ZN6QImage8fromDataEPKhiPKc (libQt6Gui.so.6 + 0x16402b)
                                                #9  0x0000683604ccf0ed _ZN6QImage12loadFromDataEPKhiPKc (libQt6Gui.so.6 + 0x1640ed)
                                                #10 0x00000eb2c127858d _ZN16AlbumCoverLoader12TryLoadImageEPNS_4TaskE (strawberry + 0x43558d)
                                                #11 0x00000eb2c1278dae _ZN16AlbumCoverLoader11ProcessTaskEPNS_4TaskE (strawberry + 0x435dae)
                                                #12 0x00000eb2c12790cc _ZN16AlbumCoverLoader11ProcessTaskEPNS_4TaskE (strawberry + 0x4360cc)
                                                #13 0x00000eb2c127985b _ZN16AlbumCoverLoader12ProcessTasksEv (strawberry + 0x43685b)
                                                #14 0x0000683604233ba0 _ZN7QObject5eventEP6QEvent (libQt6Core.so.6 + 0x3cbba0)
                                                #15 0x00006836054f46a5 _ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent (libQt6Widgets.so.6 + 0x1626a5)
                                                #16 0x0000683603fc0aca _ZN16QCoreApplication15notifyInternal2EP7QObjectP6QEvent (libQt6Core.so.6 + 0x158aca)
                                                #17 0x0000683603fc3afd _ZN23QCoreApplicationPrivate16sendPostedEventsEP7QObjectiP11QThreadData (libQt6Core.so.6 + 0x15bafd)
                                                #18 0x0000683604206384 n/a (libQt6Core.so.6 + 0x39e384)
                                                #19 0x00006836033d7f9c g_main_context_dispatch (libglib-2.0.so.0 + 0x53f9c)
                                                #20 0x000068360342ba49 n/a (libglib-2.0.so.0 + 0xa7a49)
                                                #21 0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #22 0x0000683604205c8b _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x39dc8b)
                                                #23 0x0000683603fcd02c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x16502c)
                                                #24 0x00006836040c01ba _ZN7QThread4execEv (libQt6Core.so.6 + 0x2581ba)
                                                #25 0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #26 0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #27 0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 16:
                                                #0  0x00006836030cc37f __poll (libc.so.6 + 0xf437f)
                                                #1  0x00006835ffa5163b n/a (libxcb.so.1 + 0xc63b)
                                                #2  0x00006835ffa5337b xcb_wait_for_event (libxcb.so.1 + 0xe37b)
                                                #3  0x00006835fadbd369 n/a (libQt6XcbQpa.so.6 + 0x50369)
                                                #4  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #5  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #6  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 19:
                                                #0  0x00006836030cc37f __poll (libc.so.6 + 0xf437f)
                                                #1  0x000068360342b9d8 n/a (libglib-2.0.so.0 + 0xa79d8)
                                                #2  0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #3  0x0000683604205c8b _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x39dc8b)
                                                #4  0x0000683603fcd02c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x16502c)
                                                #5  0x00006836040c01ba _ZN7QThread4execEv (libQt6Core.so.6 + 0x2581ba)
                                                #6  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #7  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #8  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 91:
                                                #0  0x00006836030cc37f __poll (libc.so.6 + 0xf437f)
                                                #1  0x000068360342b9d8 n/a (libglib-2.0.so.0 + 0xa79d8)
                                                #2  0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #3  0x0000683604205caf _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x39dcaf)
                                                #4  0x0000683603fcd02c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x16502c)
                                                #5  0x00006836040c01ba _ZN7QThread4execEv (libQt6Core.so.6 + 0x2581ba)
                                                #6  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #7  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #8  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 92:
                                                #0  0x00006836030cc37f __poll (libc.so.6 + 0xf437f)
                                                #1  0x000068360342b9d8 n/a (libglib-2.0.so.0 + 0xa79d8)
                                                #2  0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #3  0x0000683604205caf _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x39dcaf)
                                                #4  0x0000683603fcd02c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x16502c)
                                                #5  0x00006836040c01ba _ZN7QThread4execEv (libQt6Core.so.6 + 0x2581ba)
                                                #6  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #7  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #8  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 22:
                                                #0  0x00006836030cc37f __poll (libc.so.6 + 0xf437f)
                                                #1  0x000068360342b9d8 n/a (libglib-2.0.so.0 + 0xa79d8)
                                                #2  0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #3  0x0000683604205c8b _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x39dc8b)
                                                #4  0x0000683603fcd02c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x16502c)
                                                #5  0x00006836040c01ba _ZN7QThread4execEv (libQt6Core.so.6 + 0x2581ba)
                                                #6  0x0000683605ad94bb n/a (libQt6DBus.so.6 + 0x374bb)
                                                #7  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #8  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #9  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 36:
                                                #0  0x00006836030cc37f __poll (libc.so.6 + 0xf437f)
                                                #1  0x000068360342b9d8 n/a (libglib-2.0.so.0 + 0xa79d8)
                                                #2  0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #3  0x0000683604205c8b _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x39dc8b)
                                                #4  0x0000683603fcd02c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x16502c)
                                                #5  0x00006836040c01ba _ZN7QThread4execEv (libQt6Core.so.6 + 0x2581ba)
                                                #6  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #7  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #8  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 20:
                                                #0  0x00006836030cc37f __poll (libc.so.6 + 0xf437f)
                                                #1  0x000068360342b9d8 n/a (libglib-2.0.so.0 + 0xa79d8)
                                                #2  0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #3  0x0000683604205c8b _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x39dc8b)
                                                #4  0x0000683603fcd02c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x16502c)
                                                #5  0x00006836040c01ba _ZN7QThread4execEv (libQt6Core.so.6 + 0x2581ba)
                                                #6  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #7  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #8  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 88:
                                                #0  0x00006836030cc37f __poll (libc.so.6 + 0xf437f)
                                                #1  0x000068360342b9d8 n/a (libglib-2.0.so.0 + 0xa79d8)
                                                #2  0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #3  0x0000683604205caf _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x39dcaf)
                                                #4  0x0000683603fcd02c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x16502c)
                                                #5  0x00006836040c01ba _ZN7QThread4execEv (libQt6Core.so.6 + 0x2581ba)
                                                #6  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #7  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #8  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 93:
                                                #0  0x00006836030cc37f __poll (libc.so.6 + 0xf437f)
                                                #1  0x000068360342b9d8 n/a (libglib-2.0.so.0 + 0xa79d8)
                                                #2  0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #3  0x0000683604205caf _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x39dcaf)
                                                #4  0x0000683603fcd02c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x16502c)
                                                #5  0x00006836040c01ba _ZN7QThread4execEv (libQt6Core.so.6 + 0x2581ba)
                                                #6  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #7  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #8  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 196:
                                                #0  0x0000683602b8a9ba __futex_abstimed_wait_common64 (libpthread.so.0 + 0x159ba)
                                                #1  0x0000683602b84574 pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf574)
                                                #2  0x0000683604138b40 _ZN14QWaitCondition4waitEP6QMutex14QDeadlineTimer (libQt6Core.so.6 + 0x2d0b40)
                                                #3  0x00006836041361b1 n/a (libQt6Core.so.6 + 0x2ce1b1)
                                                #4  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #5  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #6  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 40:
                                                #0  0x00006836030d1a9d syscall (libc.so.6 + 0xf9a9d)
                                                #1  0x0000683603663010 gst_element_continue_state (libgstreamer-1.0.so.0 + 0x6b010)
                                                #2  0x00006836036630fc gst_element_change_state (libgstreamer-1.0.so.0 + 0x6b0fc)
                                                #3  0x00006836036637f8 n/a (libgstreamer-1.0.so.0 + 0x6b7f8)
                                                #4  0x000068360363bd95 n/a (libgstreamer-1.0.so.0 + 0x43d95)
                                                #5  0x000068360368e47c n/a (libgstreamer-1.0.so.0 + 0x9647c)
                                                #6  0x00006836036630b5 gst_element_change_state (libgstreamer-1.0.so.0 + 0x6b0b5)
                                                #7  0x00006836036637f8 n/a (libgstreamer-1.0.so.0 + 0x6b7f8)
                                                #8  0x0000683604233ba0 _ZN7QObject5eventEP6QEvent (libQt6Core.so.6 + 0x3cbba0)
                                                #9  0x00006836054f46a5 _ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent (libQt6Widgets.so.6 + 0x1626a5)
                                                #10 0x0000683603fc0aca _ZN16QCoreApplication15notifyInternal2EP7QObjectP6QEvent (libQt6Core.so.6 + 0x158aca)
                                                #11 0x0000683603fc3afd _ZN23QCoreApplicationPrivate16sendPostedEventsEP7QObjectiP11QThreadData (libQt6Core.so.6 + 0x15bafd)
                                                #12 0x0000683604206384 n/a (libQt6Core.so.6 + 0x39e384)
                                                #13 0x00006836033d7f9c g_main_context_dispatch (libglib-2.0.so.0 + 0x53f9c)
                                                #14 0x000068360342ba49 n/a (libglib-2.0.so.0 + 0xa7a49)
                                                #15 0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #16 0x0000683604205c8b _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x39dc8b)
                                                #17 0x0000683603fcd02c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x16502c)
                                                #18 0x00006836040c01ba _ZN7QThread4execEv (libQt6Core.so.6 + 0x2581ba)
                                                #19 0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #20 0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #21 0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 201:
                                                #0  0x0000683602b8a9ba __futex_abstimed_wait_common64 (libpthread.so.0 + 0x159ba)
                                                #1  0x0000683602b84574 pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf574)
                                                #2  0x0000683604138b40 _ZN14QWaitCondition4waitEP6QMutex14QDeadlineTimer (libQt6Core.so.6 + 0x2d0b40)
                                                #3  0x00006836041361b1 n/a (libQt6Core.so.6 + 0x2ce1b1)
                                                #4  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #5  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #6  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 38:
                                                #0  0x00006836030cc37f __poll (libc.so.6 + 0xf437f)
                                                #1  0x000068360342b9d8 n/a (libglib-2.0.so.0 + 0xa79d8)
                                                #2  0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #3  0x0000683604205c8b _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x39dc8b)
                                                #4  0x0000683603fcd02c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x16502c)
                                                #5  0x00006836040c01ba _ZN7QThread4execEv (libQt6Core.so.6 + 0x2581ba)
                                                #6  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #7  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #8  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 199:
                                                #0  0x0000683602b8a9ba __futex_abstimed_wait_common64 (libpthread.so.0 + 0x159ba)
                                                #1  0x0000683602b84574 pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf574)
                                                #2  0x0000683604138b40 _ZN14QWaitCondition4waitEP6QMutex14QDeadlineTimer (libQt6Core.so.6 + 0x2d0b40)
                                                #3  0x00006836041361b1 n/a (libQt6Core.so.6 + 0x2ce1b1)
                                                #4  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #5  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #6  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 89:
                                                #0  0x00006836030cc37f __poll (libc.so.6 + 0xf437f)
                                                #1  0x000068360342b9d8 n/a (libglib-2.0.so.0 + 0xa79d8)
                                                #2  0x00006836033d56f1 g_main_context_iteration (libglib-2.0.so.0 + 0x516f1)
                                                #3  0x0000683604205caf _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x39dcaf)
                                                #4  0x0000683603fcd02c _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x16502c)
                                                #5  0x00006836040c01ba _ZN7QThread4execEv (libQt6Core.so.6 + 0x2581ba)
                                                #6  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #7  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #8  0x00006836030d7053 __clone (libc.so.6 + 0xff053)

                                                Stack trace of thread 202:
                                                #0  0x0000683602b8a9ba __futex_abstimed_wait_common64 (libpthread.so.0 + 0x159ba)
                                                #1  0x0000683602b84574 pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf574)
                                                #2  0x0000683604138b40 _ZN14QWaitCondition4waitEP6QMutex14QDeadlineTimer (libQt6Core.so.6 + 0x2d0b40)
                                                #3  0x00006836041361b1 n/a (libQt6Core.so.6 + 0x2ce1b1)
                                                #4  0x00006836041305a7 n/a (libQt6Core.so.6 + 0x2c85a7)
                                                #5  0x0000683602b7e299 start_thread (libpthread.so.0 + 0x9299)
                                                #6  0x00006836030d7053 __clone (libc.so.6 + 0xff053)
jonaski commented 3 years ago

I can still reproduce the crash with Qt 6.0.3 and the latest Qt dev branch with my qtgiphy program. Not a single crash with Qt 5.15.2

jonaski commented 3 years ago

The following code can reproduce the bug when running in Qt Creator debug (qt 6):

  for (int i = 0 ; i <= 1000 ; ++i) {
    QFile file(":/something-on-me.jpg");
    if (file.open(QIODevice::ReadOnly)) {
      QByteArray data = file.readAll();
      file.close();
      QImage image;
      if (image.loadFromData(data)) {
        for (int x = 0 ; x <= 2000 ; ++x) {
          QImage image_scaled = image.scaled(QSize(x, x), Qt::KeepAspectRatio, Qt::SmoothTransformation);
          qDebug() << x << image_scaled.size();
        }
      }
    }
  }

It runs fine with Qt 5.15.2

jonaski commented 3 years ago

something-on-me

initramfs commented 3 years ago

Bug is reproducible on my system as well (Arch Linux) with Qt 6.0.3. I've submitted additional debugging information to the linked Qt bug here.

jonaski commented 3 years ago

Patch for qtbase available for testing: https://codereview.qt-project.org/gitweb?p=qt/qtbase.git;a=patch;h=b00408657e666cb5906c8da7dc10c33f8ebf258d

Let's leave this open until the next Qt 6 version with a fix.

jonaski commented 3 years ago

Unfortunately I can no longer reproduce the crash testing with 6.1, so I can't say if the patch fixes it or not. @initramfs Can you test with the patch?

jonaski commented 3 years ago

Qt 6.1.1 is available now, should have the fixes for this bug.

jonaski commented 3 years ago

I tested strawberry on a newer laptop over night where I could reproduce the crash with 6.1.0, and it seem to be fixed with Qt 6.1.1.

RillingDev commented 3 years ago

Have been running strawberry with Qt 6.1.1 for ~5 hours now, no crashes. Looks good! Thanks again for investigating (and fixing) this issue, even though it was not even in strawberry itself!