flathub / org.kde.audiotube

https://flathub.org/apps/details/org.kde.audiotube
4 stars 1 forks source link

Crashes on startup #34

Open hfiguiere opened 1 year ago

hfiguiere commented 1 year ago

Just installed AudioTube

Start it. It crashes

Thread 1 "audiotube" received signal SIGSEGV, Segmentation fault.
0x00007ffff7477ad1 in QQmlInterceptorMetaObject::intercept (this=0x5555569fb980, c=QMetaObject::ReadProperty, id=92, a=0x7fffff7ff170) at qml/qqmlvmemetaobject.cpp:309
(gdb) where
#0  0x00007ffff7477ad1 in QQmlInterceptorMetaObject::intercept(QMetaObject::Call, int, void**)
    (this=0x5555569fb980, c=QMetaObject::ReadProperty, id=92, a=0x7fffff7ff170) at qml/qqmlvmemetaobject.cpp:309
#1  0x00007ffff747ab6e in QQmlVMEMetaObject::metaCall(QObject*, QMetaObject::Call, int, void**)
    (this=0x5555569fb980, o=<optimized out>, c=QMetaObject::ReadProperty, _id=92, a=0x7fffff7ff170) at qml/qqmlvmemetaobject.cpp:680
#2  0x00007ffff74fc780 in QV4::QQmlValueTypeReference::readReferenceValue() const (this=0x7fffe881d4d8) at qml/qqmlvaluetypewrapper.cpp:170
#3  0x00007ffff74fcef0 in QV4::QQmlValueTypeWrapper::toVariant() const (this=0x7fffe881d4d8) at qml/qqmlvaluetypewrapper.cpp:226
#4  0x00007ffff732c909 in toVariant(QV4::ExecutionEngine*, QV4::Value const&, int, bool, V4ObjectSet*)
    (e=0x555555775c00, value=..., typeHint=67, createJSValueForObjects=<optimized out>, visitedObjects=0x0) at jsruntime/qv4engine.cpp:1484

See also https://discourse.flathub.org/t/audiotube-close-on-startup/4803/3

hfiguiere commented 1 year ago

I run Fedora Silverblue 38 w/ Wayland + Mutter.

Justinzobel commented 1 year ago

Interesting as I'm on Fedora KDE with Wayland and it doesn't happen on my NVIDIA GPU desktop or my Intel GPU laptop.

I posted over in the forum as well to ask the other user, it may be something to do with the GNOME desktop.

Justinzobel commented 1 year ago

@JBBgameich can hopefully check out the backtrace as well.

hfiguiere commented 1 year ago

it goes deep. This is the short version.

Justinzobel commented 1 year ago

Jonah will ask for the full trace if needed.

njic commented 1 year ago

Can I provide more logs? And how?

jbruechert commented 1 year ago

Can you try whether deleting ~/.var/app/org.kde.audiotube/cache/KDE/audiotube/qmlcache/ fixes it? There is some long standing issue with qml caches. Since ostree does not preserve the modified time of the files, Qt doesn't know when they were changed to regenerate the caches.

If that doesn't help, does flatpak run --env=QT_QUICK_CONTROLS_STYLE=org.kde.desktop --env=QT_STYLE_OVERRIDE=Breeze org.kde.audiotube work?

hfiguiere commented 1 year ago

In my case it was a fresh install, but I tried this just in case and get the same result.

hfiguiere commented 1 year ago

It seems that this cause a recursive call that smashes the stack. I am at statck frame 3134 and still not finished.

The pattern:

#3118 0x00007ffff58ff3ef in QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
    (sender=<optimized out>, m=m@entry=0x7ffff55ebde0 <QQuickAction::staticMetaObject>, local_signal_index=local_signal_index@entry=3, argv=argv@entry=0x7fffff829790) at kernel/qobject.cpp:3985
#3119 0x00007ffff54f5562 in QQuickAction::checkedChanged(bool) (this=<optimized out>, _t1=<optimized out>, _t1@entry=true) at .moc/moc_qquickaction_p.cpp:335
#3120 0x00007ffff54f64c7 in QQuickAction::setChecked(bool) (this=<optimized out>, checked=checked@entry=true) at qquickaction.cpp:457
#3121 0x00007ffff54f370a in QQuickAbstractButton::setChecked(bool) (this=0x555556b5a470, checked=<optimized out>) at qquickabstractbutton.cpp:615
#3122 0x00007ffff5905ffd in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7fffff8298d0, r=0x555556b5a470, this=0x555556c14480)
    at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#3123 doActivate<false>(QObject*, int, void**) (sender=0x555555ca5dc0, signal_index=6, argv=0x7fffff8298d0) at kernel/qobject.cpp:3925
#3124 0x00007ffff58ff3ef in QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
    (sender=<optimized out>, m=m@entry=0x7ffff55ebde0 <QQuickAction::staticMetaObject>, local_signal_index=local_signal_index@entry=3, argv=argv@entry=0x7fffff8298d0) at kernel/qobject.cpp:3985
njic commented 1 year ago

Can you try whether deleting ~/.var/app/org.kde.audiotube/cache/KDE/audiotube/qmlcache/ fixes it? There is some long standing issue with qml caches. Since ostree does not preserve the modified time of the files, Qt doesn't know when they were changed to regenerate the caches.

If that doesn't help, does flatpak run --env=QT_QUICK_CONTROLS_STYLE=org.kde.desktop --env=QT_STYLE_OVERRIDE=Breeze org.kde.audiotube work?

THX

Deleting cache didnt help, but that run command is working! What can I do now to start it without terminal?

hfiguiere commented 1 year ago

Sorry I hadn't seen the edit:

If that doesn't help, does flatpak run --env=QT_QUICK_CONTROLS_STYLE=org.kde.desktop --env=QT_STYLE_OVERRIDE=Breeze org.kde.audiotube work?

That does work, indeed.

The output in the console differ

With this command line I have:

[...]
qrc:/dialogs/RenamePlaylistDialog.qml:25: TypeError: Cannot read property 'title' of undefined
qrc:/dialogs/RenamePlaylistDialog.qml:25: TypeError: Cannot read property 'title' of undefined
qrc:/dialogs/RenamePlaylistDialog.qml:31: TypeError: Cannot read property 'description' of undefined
number of playlists 0
number of playlists 0
number of playlists 0
file:///usr/lib/qml/org/kde/kirigami.2/Dialog.qml:372:37: QML Binding: Binding loop detected for property "value"
file:///usr/lib/qml/org/kde/kirigami.2/Dialog.qml:372:37: QML Binding: Binding loop detected for property "value"
qrc:/MinimizedPlayerControls.qml:141:9: Unable to assign null to QQuickAnchorLine

Without (before it crashes):

[...]
qrc:/dialogs/RenamePlaylistDialog.qml:31: TypeError: Cannot read property 'description' of undefined
qrc:/dialogs/AddPlaylistDialog.qml:19:15: QML FormLayout: Binding loop detected for property "implicitHeight"
qrc:/dialogs/RenamePlaylistDialog.qml:20:15: QML FormLayout: Binding loop detected for property "implicitHeight"
qrc:/dialogs/AddPlaylistDialog.qml:19:15: QML FormLayout: Binding loop detected for property "implicitHeight"
qrc:/dialogs/PlaylistDialog.qml:38:9: QML AddPlaylistDialog: Binding loop detected for property "implicitHeight"
qrc:/LibraryPage.qml:661:9: QML RenamePlaylistDialog: Binding loop detected for property "implicitHeight"
qrc:/dialogs/PlaylistDialog.qml:38:9: QML AddPlaylistDialog: Binding loop detected for property "implicitHeight"

I wonder if that difference is not related to the problem