[konsole] [Bug 445865] New: Konsole hangs at TerminalPainter

Tomaz Canabrava tcanabrava at kde.org
Sun Nov 21 14:53:32 GMT 2021


Yeah, that was my mistake (never code while sleepy. Waqar is helping me to
fix as I am away from the computer today)


On Sun, 21 Nov 2021 at 11:30 ratijas <bugzilla_noreply at kde.org> wrote:

> https://bugs.kde.org/show_bug.cgi?id=445865
>
>             Bug ID: 445865
>            Summary: Konsole hangs at TerminalPainter
>            Product: konsole
>            Version: master
>           Platform: Other
>                 OS: Linux
>             Status: REPORTED
>           Severity: normal
>           Priority: NOR
>          Component: kpart
>           Assignee: konsole-devel at kde.org
>           Reporter: me at ratijas.tk
>   Target Milestone: ---
>
> SUMMARY
>
> Konsole (as well as Yakuake and any other software using kpart plugin)
> hangs
> when trying to draw my quick search menu (Ctrl+R which bound to fzf, A
> command-line fuzzy finder). Backtrace attached at the end.
>
> STEPS TO REPRODUCE
> 1. Open Konsole
> 2. Run fzf
>
> OBSERVED RESULT
> Sometimes it hangs completely. Other times it keeps running as normal.
>
> EXPECTED RESULT
> Shouldn't hang up.
>
> SOFTWARE/OS VERSIONS
> Operating System: Arch Linux
> KDE Plasma Version: 5.23.80
> KDE Frameworks Version: 5.89.0
> Qt Version: 5.15.2
> Kernel Version: 5.15.3-arch1-1 (64-bit)
> Graphics Platform: X11
> Processors: 8 × Intel® Core™ i7-6700HQ CPU @ 2.60GHz
> Memory: 15.6 GiB of RAM
> Graphics Processor: NVIDIA GeForce GTX 970M/PCIe/SSE2
>
> ADDITIONAL INFORMATION
>
> (gdb) attach 5412
> Attaching to process 5412
> [New LWP 5414]
> [New LWP 5415]
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/usr/lib/libthread_db.so.1".
> 0x00007f82892f77e6 in operator() (__closure=0x7ffdd9f14800, column=1) at
>
> /home/ratijas/kde/src/kde/applications/konsole/src/terminalDisplay/TerminalPainter.cpp:99
> 99                  const auto isInsideDrawArea = [&](int column) {
> (gdb) info threads
>   Id   Target Id                                          Frame
> * 1    Thread 0x7f82818f7f40 (LWP 5412) "konsole"
>  0x00007f82892f77e6 in
> operator() (__closure=0x7ffdd9f14800, column=1) at
>
> /home/ratijas/kde/src/kde/applications/konsole/src/terminalDisplay/TerminalPainter.cpp:99
>   2    Thread 0x7f82813ce640 (LWP 5414) "QXcbEventQueue"
> 0x00007f8286219b2f in
> poll () from /usr/lib/libc.so.6
>   3    Thread 0x7f827bfff640 (LWP 5415) "QDBusConnection"
> 0x00007f8286219b2f in
> poll () from /usr/lib/libc.so.6
> (gdb) bt
> #0  0x00007f82892f77e6 in operator() (__closure=0x7ffdd9f14800, column=1)
> at
>
> /home/ratijas/kde/src/kde/applications/konsole/src/terminalDisplay/TerminalPainter.cpp:99
> #1  0x00007f82892f7fd5 in Konsole::TerminalPainter::drawContents
> (this=0x565299c1dfb0, image=0x565299c92bd0, paint=..., rect=...,
> printerFriendly=false, imageSize=1920, bidiEnabled=true,
> lineProperties=...)
>     at
>
> /home/ratijas/kde/src/kde/applications/konsole/src/terminalDisplay/TerminalPainter.cpp:144
> #2  0x00007f82892f6e69 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0,
> 1,
> 2, 3, 4, 5, 6>, QtPrivate::List<Konsole::Character*, QPainter&, QRect
> const&,
> bool, int, bool, QVector<unsigned char> >, void, void
> (Konsole::TerminalPainter::*)(Konsole::Character*, QPainter&, QRect const&,
> bool, int, bool, QVector<unsigned char>)>::call (f=
>     (void (Konsole::TerminalPainter::*)(Konsole::TerminalPainter * const,
> Konsole::Character *, QPainter &, const QRect &, bool, int, bool,
> QVector<unsigned char>)) 0x7f82892f78b8
> <Konsole::TerminalPainter::drawContents(Konsole::Character*, QPainter&,
> QRect
> const&, bool, int, bool, QVector<unsigned char>)>, o=0x565299c1dfb0,
> arg=0x7ffdd9f14b70) at /usr/include/qt/QtCore/qobjectdefs_impl.h:152
> #3  0x00007f82892f660e in QtPrivate::FunctionPointer<void
> (Konsole::TerminalPainter::*)(Konsole::Character*, QPainter&, QRect const&,
> bool, int, bool, QVector<unsigned
> char>)>::call<QtPrivate::List<Konsole::Character*, QPainter&, QRect const&,
> bool, int, bool, QVector<unsigned char> >, void> (f=
>     (void (Konsole::TerminalPainter::*)(Konsole::TerminalPainter * const,
> Konsole::Character *, QPainter &, const QRect &, bool, int, bool,
> QVector<unsigned char>)) 0x7f82892f78b8
> <Konsole::TerminalPainter::drawContents(Konsole::Character*, QPainter&,
> QRect
> const&, bool, int, bool, QVector<unsigned char>)>, o=0x565299c1dfb0,
> arg=0x7ffdd9f14b70) at /usr/include/qt/QtCore/qobjectdefs_impl.h:185
> #4  0x00007f82892f5a67 in QtPrivate::QSlotObject<void
> (Konsole::TerminalPainter::*)(Konsole::Character*, QPainter&, QRect const&,
> bool, int, bool, QVector<unsigned char>),
> QtPrivate::List<Konsole::Character*,
> QPainter&, QRect const&, bool, int, bool, QVector<unsigned char> >,
> void>::impl
> (which=1, this_=0x565299c1e030, r=0x565299c1dfb0, a=0x7ffdd9f14b70,
> ret=0x0) at
> /usr/include/qt/QtCore/qobjectdefs_impl.h:418
> #5  0x00007f82869577ab in ?? () from /usr/lib/libQt5Core.so.5
> #6  0x00007f82892406a1 in Konsole::TerminalDisplay::drawContents
> (this=0x565299ad4400, _t1=0x565299c92bd0, _t2=..., _t3=..., _t4=false,
> _t5=1920, _t6=true, _t7=...)
>     at
>
> /home/ratijas/kde/build/kde/applications/konsole/src/konsoleprivate_autogen/DRAQINE3W2/moc_TerminalDisplay.cpp:612
> #7  0x00007f82892e4734 in Konsole::TerminalDisplay::paintEvent
> (this=0x565299ad4400, pe=0x7ffdd9f14e90) at
>
> /home/ratijas/kde/src/kde/applications/konsole/src/terminalDisplay/TerminalDisplay.cpp:727
> #8  0x00007f82876740be in QWidget::event(QEvent*) () from
> /usr/lib/libQt5Widgets.so.5
> #9  0x00007f82892ed87c in Konsole::TerminalDisplay::event
> (this=0x565299ad4400,
> event=0x7ffdd9f14e90) at
>
> /home/ratijas/kde/src/kde/applications/konsole/src/terminalDisplay/TerminalDisplay.cpp:2561
> #10 0x00007f8287630d62 in QApplicationPrivate::notify_helper(QObject*,
> QEvent*)
> () from /usr/lib/libQt5Widgets.so.5
> #11 0x00007f82869203fa in QCoreApplication::notifyInternal2(QObject*,
> QEvent*)
> () from /usr/lib/libQt5Core.so.5
> #12 0x00007f828766bcf8 in QWidgetPrivate::sendPaintEvent(QRegion const&) ()
> from /usr/lib/libQt5Widgets.so.5
> #13 0x00007f828766c55c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion
> const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*,
> QWidgetRepaintManager*) () from /usr/lib/libQt5Widgets.so.5
> #14 0x00007f8287642278 in ?? () from /usr/lib/libQt5Widgets.so.5
> #15 0x00007f8287674829 in QWidget::event(QEvent*) () from
> /usr/lib/libQt5Widgets.so.5
> #16 0x00007f8288c8c5bf in KMainWindow::event (this=0x7f827c003760,
> ev=0x565299c91e50) at
> /home/ratijas/kde/src/frameworks/kxmlgui/src/kmainwindow.cpp:936
> #17 0x00007f8288ce169f in KXmlGuiWindow::event (this=0x7f827c003760,
> ev=0x565299c91e50) at
> /home/ratijas/kde/src/frameworks/kxmlgui/src/kxmlguiwindow.cpp:219
> #18 0x00007f8287630d62 in QApplicationPrivate::notify_helper(QObject*,
> QEvent*)
> () from /usr/lib/libQt5Widgets.so.5
> #19 0x00007f82869203fa in QCoreApplication::notifyInternal2(QObject*,
> QEvent*)
> () from /usr/lib/libQt5Core.so.5
> #20 0x00007f82869234f9 in
> QCoreApplicationPrivate::sendPostedEvents(QObject*,
> int, QThreadData*) () from /usr/lib/libQt5Core.so.5
> #21 0x00007f82869799f4 in ?? () from /usr/lib/libQt5Core.so.5
> #22 0x00007f828428eaba in g_main_context_dispatch () from
> /usr/lib/libglib-2.0.so.0
> #23 0x00007f828428f2f2 in g_main_context_iterate () from
> /usr/lib/libglib-2.0.so.0
> #24 0x00007f828428f4ae in g_main_context_iteration () from
> /usr/lib/libglib-2.0.so.0
> #25 0x00007f8286979026 in
> QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
> ()
> from /usr/lib/libQt5Core.so.5
> #26 0x00007f828691ed6c in
> QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from
> /usr/lib/libQt5Core.so.5
> #27 0x00007f82869272d4 in QCoreApplication::exec() () from
> /usr/lib/libQt5Core.so.5
> #28 0x000056529784498b in main (argc=1, argv=0x7ffdd9f15b48) at
> /home/ratijas/kde/src/kde/applications/konsole/src/main.cpp:242
>
> --
> You are receiving this mail because:
> You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/konsole-devel/attachments/20211121/265fb8fc/attachment-0001.htm>


More information about the konsole-devel mailing list