https://bugs.kde.org/show_bug.cgi?id=474868
--- Comment #5 from sophi <k...@splitmail.link> --- Thanks I will try to contact package maintainer, never done this before I tried gdb to tell me and I believe i ScreenPool::reconsiderOutputOrder might call m_outputOrderWatcher->refresh. I believe it calls it from vtable here: 0x0000561f18fcde07 <+39>: call *0x60(%rax) 0x60 is 96, in x86_64 pointer is 8 bytes long, so 96/8 = 12 and the refresh method is 12 in vtable (13 to be exact because it's starts from 0, but that doesn't matter here, since the address 0x0 is element 0 and so on) [12]: 0x561f18fa7580 <WaylandOutputOrderWatcher::refresh()> However this is my first time analyzing vtables, so I might be wrong. Also from crashed ShellCorona I extracted OutputOrderWatcher object and the refresh method seems to indicate that it's WaylandOutputOrderWatcher but the commit was for X11OutputOrderWatcher refresh method. Missed impact perhaps? [12]: 0x561f18fa7580 <WaylandOutputOrderWatcher::refresh()> --------------------------- (first commit) disassemble ScreenPool::reconsiderOutputOrder Dump of assembler code for function _ZN10ScreenPool21reconsiderOutputOrderEv: 0x0000561f18fcdde0 <+0>: endbr64 0x0000561f18fcdde4 <+4>: push %rbp 0x0000561f18fcdde5 <+5>: push %rbx 0x0000561f18fcdde6 <+6>: mov %rdi,%rbx 0x0000561f18fcdde9 <+9>: sub $0x18,%rsp 0x0000561f18fcdded <+13>: mov 0x38(%rdi),%rdi 0x0000561f18fcddf1 <+17>: mov %fs:0x28,%rax 0x0000561f18fcddfa <+26>: mov %rax,0x8(%rsp) 0x0000561f18fcddff <+31>: xor %eax,%eax 0x0000561f18fcde01 <+33>: mov %rsp,%rbp 0x0000561f18fcde04 <+36>: mov (%rdi),%rax 0x0000561f18fcde07 <+39>: call *0x60(%rax) 0x0000561f18fcde0a <+42>: mov 0x38(%rbx),%rsi 0x0000561f18fcde0e <+46>: mov %rbp,%rdi 0x0000561f18fcde11 <+49>: call 0x561f18fa6cd0 <_ZNK18OutputOrderWatcher11outputOrderEv> 0x0000561f18fcde16 <+54>: mov %rbx,%rdi 0x0000561f18fcde19 <+57>: mov %rbp,%rsi 0x0000561f18fcde1c <+60>: call 0x561f18fcd590 <_ZN10ScreenPool24handleOutputOrderChangedERK11QStringList> 0x0000561f18fcde21 <+65>: mov %rbp,%rdi 0x0000561f18fcde24 <+68>: call 0x561f18f8a5e0 <_ZN5QListI7QStringED2Ev> 0x0000561f18fcde29 <+73>: mov 0x8(%rsp),%rax 0x0000561f18fcde2e <+78>: sub %fs:0x28,%rax 0x0000561f18fcde37 <+87>: jne 0x561f18fcde40 <_ZN10ScreenPool21reconsiderOutputOrderEv+96> 0x0000561f18fcde39 <+89>: add $0x18,%rsp 0x0000561f18fcde3d <+93>: pop %rbx 0x0000561f18fcde3e <+94>: pop %rbp 0x0000561f18fcde3f <+95>: ret 0x0000561f18fcde40 <+96>: call 0x561f18f7e330 <__stack_chk_fail@plt> --------------------------- (second commit) (gdb) print *(class ShellCorona*)0x7f82f0004bd0 ... m_screenPool = 0x561f1b2a3a60 (gdb) p *(class ScreenPool*) 0x561f1b2a3a60 ... m_outputOrderWatcher = 0x561f1b2a0a10 (gdb) info vtbl *(class OutputOrderWatcher*) 0x561f1b2a0a10 vtable for 'OutputOrderWatcher' @ 0x561f19013a78 (subobject @ 0x561f1b2a0a10): [0]: 0x561f18f83070 <WaylandOutputOrderWatcher::metaObject() const> [1]: 0x561f18f887e0 <WaylandOutputOrderWatcher::qt_metacast(char const*)> [2]: 0x561f18f892f0 <WaylandOutputOrderWatcher::qt_metacall(QMetaObject::Call, int, void**)> [3]: 0x561f18f8a770 <WaylandOutputOrderWatcher::~WaylandOutputOrderWatcher()> [4]: 0x561f18f8a840 <WaylandOutputOrderWatcher::~WaylandOutputOrderWatcher()> [5]: 0x7f83060ef170 <QObject::event(QEvent*)> [6]: 0x7f83060eb250 <QObject::eventFilter(QObject*, QEvent*)> [7]: 0x7f83060eb240 <QObject::timerEvent(QTimerEvent*)> [8]: 0x7f83060eb240 <QObject::timerEvent(QTimerEvent*)> [9]: 0x7f83060eb240 <QObject::timerEvent(QTimerEvent*)> [10]: 0x7f83060eb240 <QObject::timerEvent(QTimerEvent*)> [11]: 0x7f83060eb240 <QObject::timerEvent(QTimerEvent*)> [12]: 0x561f18fa7580 <WaylandOutputOrderWatcher::refresh()> -- You are receiving this mail because: You are watching all bug changes.