Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crashes on startup #34

Open
hfiguiere opened this issue Aug 6, 2023 · 11 comments
Open

Crashes on startup #34

hfiguiere opened this issue Aug 6, 2023 · 11 comments

Comments

@hfiguiere
Copy link
Contributor

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
Copy link
Contributor Author

I run Fedora Silverblue 38 w/ Wayland + Mutter.

@Justinzobel
Copy link
Member

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
Copy link
Member

@jbbgameich can hopefully check out the backtrace as well.

@hfiguiere
Copy link
Contributor Author

it goes deep. This is the short version.

@Justinzobel
Copy link
Member

Jonah will ask for the full trace if needed.

@njic
Copy link

njic commented Aug 6, 2023

Can I provide more logs? And how?

@jbruechert
Copy link
Collaborator

jbruechert commented Aug 6, 2023

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
Copy link
Contributor Author

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

@hfiguiere
Copy link
Contributor Author

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
Copy link

njic commented Aug 6, 2023

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
Copy link
Contributor Author

hfiguiere commented Aug 6, 2023

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants