Lazarus with QT bindings crashed when mouse moves over a hint
Original Reporter info from Mantis: JuhaManninen @JuhaManninen
-
Reporter name: Juha Manninen
Original Reporter info from Mantis: JuhaManninen @JuhaManninen
- Reporter name: Juha Manninen
Description:
This is related to the crashes I had earlier with QT bindings but it is not identical.
However this is the first time I can fully reproduce the error.
I have Turbopower IPro installed. It affects the hint window.
To reproduce:
- Find a property that has a big hint window. TEdit.Text or TComboBox.Text is good.
- Keep mouse pointer over the property so the hint window opens.
- Move the mouse pointer upwards on the hint window. Around the second paragraph counting from below it crashes.
Note, the crash does not happen because a hint window would close during an event. The mouse pointer is over the hint and it stays open until the crash.
The "second paragraph from below" does not make sense to me but that is how it happens.
I got similar crashes also with smaller hint windows but I could not fully reproduce it then.
The attached screenshot shows unit Object Inspector. Mouse is over "Text" at line 1590.
Linux Mint 64-bit, AMD 3-core computer, KDE 4.9.2, QT 4.8.2.
Distlay card was upgraded to GeForce GT 630 since the last reports but it should not affect this issue.
Additional information:
Program received signal SIGSEGV, Segmentation fault.
0x00000000005d81fc in fpc_check_object ()
(gdb) bt
#0 0x00000000005d81fc in fpc_check_object ()
#1 0x00007fffffffcd70 in ?? ()
#2 0x0000000000942f1d in CANSENDLCLMESSAGE (this=0x7fffcecdc290) at qt/qtwidgets.pas:2119
#3 0x0000000000946bae in SLOTMOUSEMOVE (this=0x7fffcecdc290, SENDER=0x2299b50, EVENT=0x7fffffffd620) at qt/qtwidgets.pas:3496
#4 0x00000000009436a0 in EVENTFILTER (this=0x7fffcecdc290, SENDER=0x2299b50, EVENT=0x7fffffffd620) at qt/qtwidgets.pas:2385
#5 0x000000000096868a in EVENTFILTER (this=0x7fffcecdc290, SENDER=0x2299b50, EVENT=0x7fffffffd620) at qt/qtwidgets.pas:14358
#6 0x0000000000969ecf in VIEWPORTEVENTFILTER (this=0x7fffcfb2bdb0, EVENT=0x7fffffffd620, RETVAL=0x7fffffffd06f) at qt/qtwidgets.pas:14830
#7 0x00007ffff7727b7d in QLCLAbstractScrollArea::viewportEvent(QEvent*) () from /usr/local/lib/libQt4Pas.so.5
#8 0x00007ffff3d71498 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<optimized out>, receiver=0x2299b50, event=0x7fffcecdc290) at kernel/qcoreapplication.cpp:1025
#9 0x00007ffff45e177f in notify_helper (e=0x7fffffffd620, receiver=0x2299b50, this=0x20f9bf0) at kernel/qapplication.cpp:4552
#10 QApplicationPrivate::notify_helper (this=0x20f9bf0, receiver=0x2299b50, e=0x7fffffffd620) at kernel/qapplication.cpp:4528
#11 0x00007ffff45e6f2f in QApplication::notify (this=<optimized out>, receiver=0x7fffcecdc290, e=0x7fffffffd620) at kernel/qapplication.cpp:4099
#12 0x00007ffff3d7130c in QCoreApplication::notifyInternal (this=0x20f9bd0, receiver=0x2299b50, event=0x7fffffffd620) at kernel/qcoreapplication.cpp:915
#13 0x00007ffff45e2782 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#14 QApplicationPrivate::sendMouseEvent (receiver=0x2299b50, event=0x7fffffffd620, alienWidget=0x2299b50, nativeWidget=0x2791270, buttonDown=0x0, lastMouseReceiver=..., spontaneous=true)
at kernel/qapplication.cpp:3167
#15 0x00007ffff4661b15 in QETWidget::translateMouseEvent (this=0x2791270, event=<optimized out>) at kernel/qapplication_x11.cpp:4617
#16 0x00007ffff4660ace in QApplication::x11ProcessEvent (this=0x20f9bd0, event=0x7fffffffdef0) at kernel/qapplication_x11.cpp:3732
#17 0x00007ffff468a052 in x11EventSourceDispatch (s=0x20fc990, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#18 0x00007ffff1a85d53 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#19 0x00007ffff1a860a0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#20 0x00007ffff1a86164 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#21 0x00007ffff3da089f in QEventDispatcherGlib::processEvents (this=0x20fa250, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#22 0x00007ffff4689cde in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#23 0x00007ffff3d7558f in QCoreApplication::processEvents (flags=...) at kernel/qcoreapplication.cpp:1102
#24 0x00007ffff76a629f in QCoreApplication_processEvents () from /usr/local/lib/libQt4Pas.so.5
#25 0x0000000000812fce in APPWAITMESSAGE (this=0x7ffff7f7df50) at qt/qtobject.inc:269
#26 0x0000000000636181 in IDLE (this=0x7ffff7f7c350, WAIT=true) at include/application.inc:411
#27 0x0000000000639fc7 in HANDLEMESSAGE (this=0x7ffff7f7c350) at include/application.inc:1275
#28 0x000000000063a715 in RUNLOOP (this=0x7ffff7f7c350) at include/application.inc:1407
#29 0x0000000000812fb6 in APPRUN (this=0x7ffff7f7df50, ALOOP=...) at qt/qtobject.inc:252
#30 0x000000000063a699 in RUN (this=0x7ffff7f7c350) at include/application.inc:1395
#31 0x00000000005d6053 in main () at lazarus.pp:115
Mantis conversion info:
- Mantis ID: 23161
- Version: 1.1 (SVN)
- Fixed in revision: 39141 (#e10b54f3)
- Monitored by: » Stefano (Stefano)