https://bugs.kde.org/show_bug.cgi?id=471286

            Bug ID: 471286
           Summary: Infinite loop in ActionToolbar
    Classification: Frameworks and Libraries
           Product: frameworks-kirigami
           Version: unspecified
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: kdelibs-b...@kde.org
          Reporter: k...@davidedmundson.co.uk
                CC: notm...@gmail.com
  Target Milestone: Not decided

We lay out, which changes the implicit size, which adds an item, which triggers
a relayout.

#550 0x00007fffc271c0f6 in ToolBarLayout::relayout (this=0x5555557f7050)
    at
/home/david/projects/kde6/src/frameworks/kirigami/src/toolbarlayout.cpp:306
--Type <RET> for more, q to quit, c to continue without paging--
#551 0x00007fffc27264d4 in operator() (__closure=0x555564e12fd0,
incubator=0x555564e12f90)
    at
/home/david/projects/kde6/src/frameworks/kirigami/src/toolbarlayoutdelegate.cpp:144
#552 0x00007fffc2727904 in std::__invoke_impl<void,
ToolBarLayoutDelegate::createItems(QQmlComponent*, QQmlComponent*,
std::function<void(QQuickItem*)>)::<lambda(ToolBarDelegateIncubator*)>&,
ToolBarDelegateIncubator*>(std::__invoke_other, struct {...} &) (__f=...) at
/usr/include/c++/13.1.1/bits/invoke.h:61
#553 0x00007fffc272765e in std::__invoke_r<void,
ToolBarLayoutDelegate::createItems(QQmlComponent*, QQmlComponent*,
std::function<void(QQuickItem*)>)::<lambda(ToolBarDelegateIncubator*)>&,
ToolBarDelegateIncubator*>(struct {...} &) (__fn=...) at
/usr/include/c++/13.1.1/bits/invoke.h:111
#554 0x00007fffc272742e in
std::_Function_handler<void(ToolBarDelegateIncubator*),
ToolBarLayoutDelegate::createItems(QQmlComponent*, QQmlComponent*,
std::function<void(QQuickItem*)>)::<lambda(ToolBarDelegateIncubator*)>
>::_M_invoke(const std::_Any_data &, ToolBarDelegateIncubator *&&)
(__functor=..., 
    __args#0=@0x7fffff82f520: 0x555564e12f90) at
/usr/include/c++/13.1.1/bits/std_function.h:290
#555 0x00007fffc2727e13 in std::function<void
(ToolBarDelegateIncubator*)>::operator()(ToolBarDelegateIncubator*) const
(this=0x555564e12fd0, __args#0=0x555564e12f90) at
/usr/include/c++/13.1.1/bits/std_function.h:591
#556 0x00007fffc2725b6a in ToolBarDelegateIncubator::statusChanged
(this=0x555564e12f90, 
    status=QQmlIncubator::Ready)
    at
/home/david/projects/kde6/src/frameworks/kirigami/src/toolbarlayoutdelegate.cpp:59
#557 0x00007ffff735fc72 in QQmlIncubatorPrivate::incubate
(this=this@entry=0x555564e150e0, i=...)
    at
/home/david/projects/kde6/src/qtdeclarative/src/qml/qml/qqmlincubator.cpp:365
#558 0x00007ffff7360254 in QQmlEnginePrivate::incubate (this=0x555555749480,
i=..., forContext=...)
    at
/home/david/projects/kde6/src/qtdeclarative/src/qml/qml/qqmlincubator.cpp:53
#559 0x00007ffff72f4855 in QQmlComponent::create (this=<optimized out>,
incubator=..., context=<optimized out>, 
    forContext=<optimized out>) at
/home/david/projects/kde6/src/qtdeclarative/src/qml/qml/qqmlcomponent.cpp:1428
#560 0x00007fffc27258db in ToolBarDelegateIncubator::create
(this=0x555564e12f90)
    at
/home/david/projects/kde6/src/frameworks/kirigami/src/toolbarlayoutdelegate.cpp:31
#561 0x00007fffc2726b8a in ToolBarLayoutDelegate::createItems(QQmlComponent*,
QQmlComponent*, std::function<void (QQuickItem*)>) (this=0x555564e151d0,
fullComponent=0x55555588a210, iconComponent=0x55555586a310, callback=...)
    at
/home/david/projects/kde6/src/frameworks/kirigami/src/toolbarlayoutdelegate.cpp:175
--Type <RET> for more, q to quit, c to continue without paging--
#562 0x00007fffc271d7c6 in ToolBarLayout::Private::createDelegate
(this=0x55555581a9c0, action=0x55555594b130)
    at
/home/david/projects/kde6/src/frameworks/kirigami/src/toolbarlayout.cpp:610
#563 0x00007fffc271d4a4 in ToolBarLayout::Private::createDelegates
(this=0x55555581a9c0)
    at
/home/david/projects/kde6/src/frameworks/kirigami/src/toolbarlayout.cpp:559
#564 0x00007fffc271c47a in ToolBarLayout::Private::calculateImplicitSize
(this=0x55555581a9c0)
    at
/home/david/projects/kde6/src/frameworks/kirigami/src/toolbarlayout.cpp:374
#565 0x00007fffc271c0f6 in ToolBarLayout::relayout (this=0x5555557f7050)
    at
/home/david/projects/kde6/src/frameworks/kirigami/src/toolbarlayout.cpp:306

Reproducible case:



import QtQuick
import QtQuick.Controls as QQC2
import org.kde.kirigami 2.20 as Kirigami

Item {
    width: 300
    height: 200

    Kirigami.InlineMessage {
        anchors {
            left: parent.left
            right: parent.right
            top: parent.top
        }
        text: "This is some text and oh my god it's soooooo long"
        visible: true
        showCloseButton: true
        actions: [
            QQC2.Action {
                icon.name: "edit-bomb"
                text: "I am here, click me"
                onTriggered: {
                    console.warn("Hello World")
                }
            }
        ]
    }
}

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to