dschopf / plasma-applet-qalculate

Qalculate applet for plasma desktop
MIT License
11 stars 5 forks source link

Plasmoid crashing in Plasma 5.24.5 #49

Closed xpt3 closed 2 years ago

xpt3 commented 2 years ago

Hi! I'm having trouble getting work the plasmoid.

I installed the version 0.8.4 from AUR and I checked that the changes commented in #44 are not presented in this version (I was having the same errors regarding buttonIcon). So, I download the last version in a zip file from Github to compile and install it.

Now, the plasmoid crash when I calculate something, and I got the following output when plasmashell crashed and then restarted:

krunner[182140]: free(): invalid next size (fast) krunner[182140]: KCrash: Attempting to start /usr/bin/plasmashell krunner[182140]: KCrash: crashing... crashRecursionCounter = 2 krunner[182140]: KCrash: Application Name = plasmashell path = /usr/bin pid = 182140 krunner[182140]: KCrash: Arguments: /usr/bin/plasmashell --replace audit[182140]: ANOM_ABEND auid=1000 uid=1000 gid=985 ses=3 pid=182140 comm="plasmashell" exe="/usr/bin/plasmashell" sig=6 res=1 plasmashell[182399]: kf.plasma.quick: Applet preload policy set to 1 plasmashell[182399]: qml: PlasmaExtras.ScrollArea is deprecated. Use PlasmaComponents3.ScrollView instead. plasmashell[182399]: qml: PlasmaExtras.ScrollArea is deprecated. Use PlasmaComponents3.ScrollView instead. plasmashell[182399]: Plasma Shell startup completed plasmashell[182399]: Plasma Shell startup completed plasmashell[182399]: Plasma Shell startup completed plasmashell[182399]: Loading Calendar plugin HolidaysEventsPlugin(0x55cce0eee9a0) plasmashell[182399]: qml: initializing appMenuModel... plasmashell[182399]: Connecting to deprecated signal QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString) plasmashell[182399]: qml: initializing appmenu...DONE AppMenuModel(0x55cce0ef55f0) plasmashell[182399]: qml: setting model in QML: AppMenuModel(0x55cce0ef55f0) plasmashell[182399]: qml: objectName -> plasmashell[182399]: qml: menuAvailable -> true plasmashell[182399]: qml: objectNameChanged -> function() { [native code] } plasmashell[182399]: qml: dataChanged -> function() { [native code] } plasmashell[182399]: qml: headerDataChanged -> function() { [native code] } plasmashell[182399]: qml: layoutChanged -> function() { [native code] } plasmashell[182399]: qml: layoutAboutToBeChanged -> function() { [native code] } plasmashell[182399]: qml: rowsAboutToBeInserted -> function() { [native code] } plasmashell[182399]: qml: rowsInserted -> function() { [native code] } plasmashell[182399]: qml: rowsAboutToBeRemoved -> function() { [native code] } plasmashell[182399]: qml: rowsRemoved -> function() { [native code] } plasmashell[182399]: qml: columnsAboutToBeInserted -> function() { [native code] } plasmashell[182399]: qml: columnsInserted -> function() { [native code] } plasmashell[182399]: qml: columnsAboutToBeRemoved -> function() { [native code] } plasmashell[182399]: qml: columnsRemoved -> function() { [native code] } plasmashell[182399]: qml: modelAboutToBeReset -> function() { [native code] } plasmashell[182399]: qml: modelReset -> function() { [native code] } plasmashell[182399]: qml: rowsAboutToBeMoved -> function() { [native code] } plasmashell[182399]: qml: rowsMoved -> function() { [native code] } plasmashell[182399]: qml: columnsAboutToBeMoved -> function() { [native code] } plasmashell[182399]: qml: columnsMoved -> function() { [native code] } plasmashell[182399]: qml: submit -> function() { [native code] } plasmashell[182399]: qml: revert -> function() { [native code] } plasmashell[182399]: qml: resetInternalData -> function() { [native code] } plasmashell[182399]: qml: hasIndex -> function() { [native code] } plasmashell[182399]: qml: index -> function() { [native code] } plasmashell[182399]: qml: parent -> function() { [native code] } plasmashell[182399]: qml: sibling -> function() { [native code] } plasmashell[182399]: qml: rowCount -> function() { [native code] } plasmashell[182399]: qml: columnCount -> function() { [native code] } plasmashell[182399]: qml: hasChildren -> function() { [native code] } plasmashell[182399]: qml: data -> function() { [native code] } plasmashell[182399]: qml: setData -> function() { [native code] } plasmashell[182399]: qml: headerData -> function() { [native code] } plasmashell[182399]: qml: fetchMore -> function() { [native code] } plasmashell[182399]: qml: canFetchMore -> function() { [native code] } plasmashell[182399]: qml: flags -> function() { [native code] } plasmashell[182399]: qml: match -> function() { [native code] } plasmashell[182399]: qml: menuAvailableChanged -> function() { [native code] } plasmashell[182399]: qml: modelNeedsUpdate -> function() { [native code] } plasmashell[182399]: qml: setting model in QML: AppMenuModel(0x55cce0ef55f0) plasmashell[182399]: qml: objectName -> plasmashell[182399]: qml: menuAvailable -> true plasmashell[182399]: qml: objectNameChanged -> function() { [native code] } plasmashell[182399]: qml: dataChanged -> function() { [native code] } plasmashell[182399]: qml: headerDataChanged -> function() { [native code] } plasmashell[182399]: qml: layoutChanged -> function() { [native code] } plasmashell[182399]: qml: layoutAboutToBeChanged -> function() { [native code] } plasmashell[182399]: qml: rowsAboutToBeInserted -> function() { [native code] } plasmashell[182399]: qml: rowsInserted -> function() { [native code] } plasmashell[182399]: qml: rowsAboutToBeRemoved -> function() { [native code] } plasmashell[182399]: qml: rowsRemoved -> function() { [native code] } plasmashell[182399]: qml: columnsAboutToBeInserted -> function() { [native code] } plasmashell[182399]: qml: columnsInserted -> function() { [native code] } plasmashell[182399]: qml: columnsAboutToBeRemoved -> function() { [native code] } plasmashell[182399]: qml: columnsRemoved -> function() { [native code] } plasmashell[182399]: qml: modelAboutToBeReset -> function() { [native code] } plasmashell[182399]: qml: modelReset -> function() { [native code] } plasmashell[182399]: qml: rowsAboutToBeMoved -> function() { [native code] } plasmashell[182399]: qml: rowsMoved -> function() { [native code] } plasmashell[182399]: qml: columnsAboutToBeMoved -> function() { [native code] } plasmashell[182399]: qml: columnsMoved -> function() { [native code] } plasmashell[182399]: qml: submit -> function() { [native code] } plasmashell[182399]: qml: revert -> function() { [native code] } plasmashell[182399]: qml: resetInternalData -> function() { [native code] } plasmashell[182399]: qml: hasIndex -> function() { [native code] } plasmashell[182399]: qml: index -> function() { [native code] } plasmashell[182399]: qml: parent -> function() { [native code] } plasmashell[182399]: qml: sibling -> function() { [native code] } plasmashell[182399]: qml: rowCount -> function() { [native code] } plasmashell[182399]: qml: columnCount -> function() { [native code] } plasmashell[182399]: qml: hasChildren -> function() { [native code] } plasmashell[182399]: qml: data -> function() { [native code] } plasmashell[182399]: qml: setData -> function() { [native code] } plasmashell[182399]: qml: headerData -> function() { [native code] } plasmashell[182399]: qml: fetchMore -> function() { [native code] } plasmashell[182399]: qml: canFetchMore -> function() { [native code] } plasmashell[182399]: qml: flags -> function() { [native code] } plasmashell[182399]: qml: match -> function() { [native code] } plasmashell[182399]: qml: menuAvailableChanged -> function() { [native code] } plasmashell[182399]: qml: modelNeedsUpdate -> function() { [native code] } plasmashell[182399]: file:///usr/share/plasma/plasmoids/org.kde.plasma.notes/contents/ui/ShortcutMenuItem.qml:17:5: QML Shortcut: Shortcut: Only binding to one of multiple key bindings associated with 10. Use 'sequences: [ ]' to bind to all of them. plasmashell[182399]: file:///usr/share/plasma/plasmoids/org.kde.plasma.notes/contents/ui/ShortcutMenuItem.qml:17:5: QML Shortcut: Shortcut: Only binding to one of multiple key bindings associated with 9. Use 'sequences: [ ]' to bind to all of them. plasmashell[182399]: file:///usr/share/plasma/plasmoids/org.kde.plasma.notes/contents/ui/ShortcutMenuItem.qml:17:5: QML Shortcut: Shortcut: Only binding to one of multiple key bindings associated with 8. Use 'sequences: [ ]' to bind to all of them. plasmashell[182399]: file:///usr/share/plasma/plasmoids/org.kde.panel/contents/ui/main.qml:18:1: QML DropArea (parent or ancestor of QQuickLayoutAttached): Binding loop detected for property "minimumWidth" plasmashell[182399]: qml: initializing appMenuModel... plasmashell[182399]: qml: initializing appmenu...DONE AppMenuModel(0x55cce1367e30) plasmashell[182399]: qml: setting model in QML: AppMenuModel(0x55cce1367e30) plasmashell[182399]: qml: objectName -> plasmashell[182399]: qml: menuAvailable -> true plasmashell[182399]: qml: objectNameChanged -> function() { [native code] } plasmashell[182399]: qml: dataChanged -> function() { [native code] } plasmashell[182399]: qml: headerDataChanged -> function() { [native code] } plasmashell[182399]: qml: layoutChanged -> function() { [native code] } plasmashell[182399]: qml: layoutAboutToBeChanged -> function() { [native code] } plasmashell[182399]: qml: rowsAboutToBeInserted -> function() { [native code] } plasmashell[182399]: qml: rowsInserted -> function() { [native code] } plasmashell[182399]: qml: rowsAboutToBeRemoved -> function() { [native code] } plasmashell[182399]: qml: rowsRemoved -> function() { [native code] } plasmashell[182399]: qml: columnsAboutToBeInserted -> function() { [native code] } plasmashell[182399]: qml: columnsInserted -> function() { [native code] } plasmashell[182399]: qml: columnsAboutToBeRemoved -> function() { [native code] } plasmashell[182399]: qml: columnsRemoved -> function() { [native code] } plasmashell[182399]: qml: modelAboutToBeReset -> function() { [native code] } plasmashell[182399]: qml: modelReset -> function() { [native code] } plasmashell[182399]: qml: rowsAboutToBeMoved -> function() { [native code] } plasmashell[182399]: qml: rowsMoved -> function() { [native code] } plasmashell[182399]: qml: columnsAboutToBeMoved -> function() { [native code] } plasmashell[182399]: qml: columnsMoved -> function() { [native code] } plasmashell[182399]: qml: submit -> function() { [native code] } plasmashell[182399]: qml: revert -> function() { [native code] } plasmashell[182399]: qml: resetInternalData -> function() { [native code] } plasmashell[182399]: qml: hasIndex -> function() { [native code] } plasmashell[182399]: qml: index -> function() { [native code] } plasmashell[182399]: qml: parent -> function() { [native code] } plasmashell[182399]: qml: sibling -> function() { [native code] } plasmashell[182399]: qml: rowCount -> function() { [native code] } plasmashell[182399]: qml: columnCount -> function() { [native code] } plasmashell[182399]: qml: hasChildren -> function() { [native code] } plasmashell[182399]: qml: data -> function() { [native code] } plasmashell[182399]: qml: setData -> function() { [native code] } plasmashell[182399]: qml: headerData -> function() { [native code] } plasmashell[182399]: qml: fetchMore -> function() { [native code] } plasmashell[182399]: qml: canFetchMore -> function() { [native code] } plasmashell[182399]: qml: flags -> function() { [native code] } plasmashell[182399]: qml: match -> function() { [native code] } plasmashell[182399]: qml: menuAvailableChanged -> function() { [native code] } plasmashell[182399]: qml: modelNeedsUpdate -> function() { [native code] } plasmashell[182399]: qml: setting model in QML: AppMenuModel(0x55cce1367e30) plasmashell[182399]: qml: objectName -> plasmashell[182399]: qml: menuAvailable -> true plasmashell[182399]: qml: objectNameChanged -> function() { [native code] } plasmashell[182399]: qml: dataChanged -> function() { [native code] } plasmashell[182399]: qml: headerDataChanged -> function() { [native code] } plasmashell[182399]: qml: layoutChanged -> function() { [native code] } plasmashell[182399]: qml: layoutAboutToBeChanged -> function() { [native code] } plasmashell[182399]: qml: rowsAboutToBeInserted -> function() { [native code] } plasmashell[182399]: qml: rowsInserted -> function() { [native code] } plasmashell[182399]: qml: rowsAboutToBeRemoved -> function() { [native code] } plasmashell[182399]: qml: rowsRemoved -> function() { [native code] } plasmashell[182399]: qml: columnsAboutToBeInserted -> function() { [native code] } plasmashell[182399]: qml: columnsInserted -> function() { [native code] } plasmashell[182399]: qml: columnsAboutToBeRemoved -> function() { [native code] } plasmashell[182399]: qml: columnsRemoved -> function() { [native code] } plasmashell[182399]: qml: modelAboutToBeReset -> function() { [native code] } plasmashell[182399]: qml: modelReset -> function() { [native code] } plasmashell[182399]: qml: rowsAboutToBeMoved -> function() { [native code] } plasmashell[182399]: qml: rowsMoved -> function() { [native code] } plasmashell[182399]: qml: columnsAboutToBeMoved -> function() { [native code] } plasmashell[182399]: qml: columnsMoved -> function() { [native code] } plasmashell[182399]: qml: submit -> function() { [native code] } plasmashell[182399]: qml: revert -> function() { [native code] } plasmashell[182399]: qml: resetInternalData -> function() { [native code] } plasmashell[182399]: qml: hasIndex -> function() { [native code] } plasmashell[182399]: qml: index -> function() { [native code] } plasmashell[182399]: qml: parent -> function() { [native code] } plasmashell[182399]: qml: sibling -> function() { [native code] } plasmashell[182399]: qml: rowCount -> function() { [native code] } plasmashell[182399]: qml: columnCount -> function() { [native code] } plasmashell[182399]: qml: hasChildren -> function() { [native code] } plasmashell[182399]: qml: data -> function() { [native code] } plasmashell[182399]: qml: setData -> function() { [native code] } plasmashell[182399]: qml: headerData -> function() { [native code] } plasmashell[182399]: qml: fetchMore -> function() { [native code] } plasmashell[182399]: qml: canFetchMore -> function() { [native code] } plasmashell[182399]: qml: flags -> function() { [native code] } plasmashell[182399]: qml: match -> function() { [native code] } plasmashell[182399]: qml: menuAvailableChanged -> function() { [native code] } plasmashell[182399]: qml: modelNeedsUpdate -> function() { [native code] } plasmashell[182399]: 2 plasmashell[182399]: file:///usr/share/plasma/plasmoids/org.kde.panel/contents/ui/main.qml:18:1: QML DropArea (parent or ancestor of QQuickLayoutAttached): Binding loop detected for property "minimumWidth" plasmashell[182399]: Trying to use rootObject before initialization is completed, whilst using setInitializationDelayed. Forcing completion plasmashell[182399]: file:///usr/share/plasma/plasmoids/org.kde.panel/contents/ui/main.qml:18:1: QML DropArea (parent or ancestor of QQuickLayoutAttached): Binding loop detected for property "minimumHeight" plasmashell[182399]: Trying to use rootObject before initialization is completed, whilst using setInitializationDelayed. Forcing completion plasmashell[182399]: file:///usr/share/plasma/plasmoids/org.kde.panel/contents/ui/main.qml:18:1: QML DropArea (parent or ancestor of QQuickLayoutAttached): Binding loop detected for property "minimumHeight" plasmashell[182399]: Both point size and pixel size set. Using pixel size. plasmashell[182399]: Both point size and pixel size set. Using pixel size. plasmashell[182399]: Both point size and pixel size set. Using pixel size. plasmashell[182399]: Both point size and pixel size set. Using pixel size. plasmashell[182399]: Both point size and pixel size set. Using pixel size. plasmashell[182399]: Cyclic dependency detected between "file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/global/Globals.qml" and "file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/NotificationHeader.qml" plasmashell[182399]: file:///usr/share/plasma/plasmoids/org.kde.plasma.private.systemtray/contents/ui/ExpandedRepresentation.qml:165:9: QML HiddenItemsView: Binding loop detected for property "implicitHeight" file:///usr/share/plasma/plasmoids/org.kde.plasma.private.systemtray/contents/ui/ExpandedRepresentation.qml:165:9: QML HiddenItemsView: Binding loop detected for property "implicitHeight" plasmashell[182399]: QXcbClipboard: SelectionRequest too old plasmashell[182399]: Both point size and pixel size set. Using pixel size. plasmashell[182399]: QFont::setPointSizeF: Point size <= 0 (0.000000), must be greater than 0 plasmashell[182399]: kf.plasma.core: findInCache with a lastModified timestamp of 0 is deprecated plasmashell[182399]: QFont::setPointSizeF: Point size <= 0 (0.000000), must be greater than 0 plasmashell[182399]: file:///usr/lib/qt/qml/org/kde/plasma/extras/PlaceholderMessage.qml:238:5: QML Heading: Binding loop detected for property "verticalAlignment" plasmashell[182399]: Qt Quick Layouts: Detected recursive rearrange. Aborting after two iterations. plasmashell[182399]: Qt Quick Layouts: Detected recursive rearrange. Aborting after two iterations.

I can't notice where is the error. I'm using Archlinux with Plasma 5.24.5.

dschopf commented 2 years ago

Which version of libqalculate are you using? Can you try running plasmoidviewer -l desktop --applet org.kde.plasma.qalculate or maybe even gdb --args plasmoidviewer -l desktop --applet org.kde.plasma.qalculate to get some idea what crashes?

xpt3 commented 2 years ago

I'm using libqalculate 4.1.1-2.

plasmoidviewer -l desktop --applet org.kde.plasma.qalculate

QML debugging is enabled. Only use this in a safe environment. qml: View QML loaded kf.plasma.quick: Applet preload policy set to 1 Toolbox not loading, toolbox package is either invalid or disabled. qml: New Containment: ContainmentInterface(0x55bc9956f070) file:///usr/share/plasma/plasmoids/org.kde.plasma.qalculate/contents/ui/FullRepresentation.qml:408:11: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo() { ... } Trying to take space not available BasicAppletContainer_QMLTYPE_157_QML_165(0x55bc99e51210, parent=0x55bc995cc520, geometry=320,240 400x480) Trying to take space not available BasicAppletContainer_QMLTYPE_157_QML_165(0x55bc99e51210, parent=0x55bc995cc520, geometry=320,240 400x480) Error: cannot change the containment to AppletsLayout free(): invalid next size (fast) KCrash: crashing... crashRecursionCounter = 2 KCrash: Application Name = plasmoidviewer path = /usr/bin pid = 956114 KCrash: Arguments: /usr/bin/plasmoidviewer -l desktop --applet org.kde.plasma.qalculate KCrash: Attempting to start /usr/lib/drkonqi QSocketNotifier: Invalid socket 6 and type 'Read', disabling... QSocketNotifier: Invalid socket 13 and type 'Read', disabling... failed to signal syncobj 9 Unable to start Dr. Konqi Re-raising signal for core dump handling. Abortado (`core' generado) org.kde.drkonqi: The specified process does not exist.

gdb --args plasmoidviewer -l desktop --applet org.kde.plasma.qalculate

free(): invalid next size (fast) Thread 18 "plasmoidviewer" received signal SIGABRT, Aborted. [Switching to Thread 0x7fffcc9b8640 (LWP 1001065)] __pthread_kill_implementation (threadid=, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44 44 return INTERNAL_SYSCALL_ERROR_P (ret) ? INTERNAL_SYSCALL_ERRNO (ret) : 0;

dschopf commented 2 years ago

That's not really helpful, can you run the gdb command again and once it crashes can you post the output of thread apply all bt from within the gdb shell?

dschopf commented 2 years ago

I have been able to reproduce this issue. Please watch https://github.com/Qalculate/libqalculate/issues/438 for further details.

xpt3 commented 2 years ago

Thank you, I will be watching it.

xpt3 commented 2 years ago

The problem was solved upgrading gnutls from 3.7.5-1 to 3.7.5-2.