Matthew Woehlke wrote: > phanisvara das wrote: >> KDE 4.4.90 (RC1) on openSUSE 11.2 -- a few days ago i found that >> kcolorchooser crashes whenever i try to use the dropper tool to sample >> some color from the screen. can somebody please try this, so i know if i >> messed things up or if it's a bug? > > Here too, using last night's build. Dies when I let go of the mouse button. ...and this should be reported to the devel list(s), not the user list. Since it appears to be a glitch in KApplication, k-c-d is probably appropriate (if I'm wrong, please correct me). KColorChooser has had one change in the last (exactly) 18 months, and that a trivial change related to the message catalog. On the other hand, r1141326/r1141329 (less than two weeks ago; hi, Lubos!) to kapplication.cpp mention the x11 filtering code. > SEGV here, in the bowels of QFontEngineFT::loadGlyph. Since I haven't > rebuild Qt in some time (and still on I think 4.6.2), that smells > suspiciously like a memory corruption elsewhere. > > ....and Valgrind agrees: >> ==20486== Invalid read of size 8 >> ==20486== at 0x4E2BEA8: KApplication::removeX11EventFilter(QWidget const*) (qlist.h:132) >> ==20486== by 0x4D7C561: KColorDialog::mouseReleaseEvent(QMouseEvent*) (kcolordialog.cpp:1737) >> ==20486== by 0x633B8DE: QWidget::event(QEvent*) (qwidget.cpp:7998) >> ==20486== by 0x62DE5DD: QApplicationPrivate::notify_helper(QObject*, QEvent*) (qapplication.cpp:4304) >> ==20486== by 0x62DC5F8: QApplication::notify(QObject*, QEvent*) (qapplication.cpp:3869) >> ==20486== by 0x4E2C4A5: KApplication::notify(QObject*, QEvent*) (kapplication.cpp:309) >> ==20486== by 0x5AF1944: QCoreApplication::notifyInternal(QObject*, QEvent*) (qcoreapplication.cpp:704) >> ==20486== by 0x4D7F5D6: KCDPickerFilter::x11Event(_XEvent*) (qcoreapplication.h:215) >> ==20486== by 0x4E2BC4D: KApplication::x11EventFilter(_XEvent*) (kapplication.cpp:914) >> ==20486== by 0x635E136: qt_x11EventFilter(_XEvent*) (qapplication_x11.cpp:399) >> ==20486== by 0x636B9ED: QApplication::x11ProcessEvent(_XEvent*) (qapplication_x11.cpp:3231) >> ==20486== by 0x63A1196: x11EventSourceDispatch(_GSource*, int (*)(void*), void*) (qguieventdispatcher_glib.cpp:146) >> ==20486== Address 0x8098800 is 0 bytes inside a block of size 8 free'd >> ==20486== at 0x4A04A84: operator delete(void*) (vg_replace_malloc.c:346) >> ==20486== by 0x4E2BF02: KApplication::removeX11EventFilter(QWidget const*) (kapplication.cpp:281) >> ==20486== by 0x4D7C561: KColorDialog::mouseReleaseEvent(QMouseEvent*) (kcolordialog.cpp:1737) >> ==20486== by 0x633B8DE: QWidget::event(QEvent*) (qwidget.cpp:7998) >> ==20486== by 0x62DE5DD: QApplicationPrivate::notify_helper(QObject*, QEvent*) (qapplication.cpp:4304) >> ==20486== by 0x62DC5F8: QApplication::notify(QObject*, QEvent*) (qapplication.cpp:3869) >> ==20486== by 0x4E2C4A5: KApplication::notify(QObject*, QEvent*) (kapplication.cpp:309) >> ==20486== by 0x5AF1944: QCoreApplication::notifyInternal(QObject*, QEvent*) (qcoreapplication.cpp:704) >> ==20486== by 0x4D7F5D6: KCDPickerFilter::x11Event(_XEvent*) (qcoreapplication.h:215) >> ==20486== by 0x4E2BC4D: KApplication::x11EventFilter(_XEvent*) (kapplication.cpp:914) >> ==20486== by 0x635E136: qt_x11EventFilter(_XEvent*) (qapplication_x11.cpp:399) >> ==20486== by 0x636B9ED: QApplication::x11ProcessEvent(_XEvent*) (qapplication_x11.cpp:3231) >> ==20486== >> ==20486== Invalid read of size 1 >> ==20486== at 0x4E2BEAB: KApplication::removeX11EventFilter(QWidget const*) (qlist.h:132) >> ==20486== by 0x4D7C561: KColorDialog::mouseReleaseEvent(QMouseEvent*) (kcolordialog.cpp:1737) >> ==20486== by 0x633B8DE: QWidget::event(QEvent*) (qwidget.cpp:7998) >> ==20486== by 0x62DE5DD: QApplicationPrivate::notify_helper(QObject*, QEvent*) (qapplication.cpp:4304) >> ==20486== by 0x62DC5F8: QApplication::notify(QObject*, QEvent*) (qapplication.cpp:3869) >> ==20486== by 0x4E2C4A5: KApplication::notify(QObject*, QEvent*) (kapplication.cpp:309) >> ==20486== by 0x5AF1944: QCoreApplication::notifyInternal(QObject*, QEvent*) (qcoreapplication.cpp:704) >> ==20486== by 0x4D7F5D6: KCDPickerFilter::x11Event(_XEvent*) (qcoreapplication.h:215) >> ==20486== by 0x4E2BC4D: KApplication::x11EventFilter(_XEvent*) (kapplication.cpp:914) >> ==20486== by 0x635E136: qt_x11EventFilter(_XEvent*) (qapplication_x11.cpp:399) >> ==20486== by 0x636B9ED: QApplication::x11ProcessEvent(_XEvent*) (qapplication_x11.cpp:3231) >> ==20486== by 0x63A1196: x11EventSourceDispatch(_GSource*, int (*)(void*), void*) (qguieventdispatcher_glib.cpp:146) >> ==20486== Address 0xe5c05d0 is 16 bytes inside a block of size 40 free'd >> ==20486== at 0x4A04D72: free (vg_replace_malloc.c:325) >> ==20486== by 0x59E877D: qFree(void*) (qmalloc.cpp:60) >> ==20486== by 0x4E2BEFA: KApplication::removeX11EventFilter(QWidget const*) (qlist.h:621) >> ==20486== by 0x4D7C561: KColorDialog::mouseReleaseEvent(QMouseEvent*) (kcolordialog.cpp:1737) >> ==20486== by 0x633B8DE: QWidget::event(QEvent*) (qwidget.cpp:7998) >> ==20486== by 0x62DE5DD: QApplicationPrivate::notify_helper(QObject*, QEvent*) (qapplication.cpp:4304) >> ==20486== by 0x62DC5F8: QApplication::notify(QObject*, QEvent*) (qapplication.cpp:3869) >> ==20486== by 0x4E2C4A5: KApplication::notify(QObject*, QEvent*) (kapplication.cpp:309) >> ==20486== by 0x5AF1944: QCoreApplication::notifyInternal(QObject*, QEvent*) (qcoreapplication.cpp:704) >> ==20486== by 0x4D7F5D6: KCDPickerFilter::x11Event(_XEvent*) (qcoreapplication.h:215) >> ==20486== by 0x4E2BC4D: KApplication::x11EventFilter(_XEvent*) (kapplication.cpp:914) >> ==20486== by 0x635E136: qt_x11EventFilter(_XEvent*) (qapplication_x11.cpp:399) > > Now, I wonder if that is a KColorChooser bug, or a bug in > KApplication::removeX11EventFilter? > > (Also worth noting, running under valgrind seems to avoid the crash, so > the SEGV is almost certainly a symptom and not the problem.) -- Matthew Please do not quote my e-mail address unobfuscated in message bodies. -- English is to grammar as Microsoft is to standards. Both steal and mangle gratuitously, and without apparent shame. ___________________________________________________ This message is from the kde mailing list. Account management: https://mail.kde.org/mailman/listinfo/kde. Archives: http://lists.kde.org/. More info: http://www.kde.org/faq.html.