Help needed in interpreting valgrind output
Martijn Klingens
klingens at kde.org
Tue Apr 23 21:08:01 BST 2002
On Tuesday 23 April 2002 16:09, Martijn Klingens wrote:
> On Tue, 23 Apr 2002, Matthias Welwarsky wrote:
> > valgrinding ksiemens (happens with all other apps, too), I see among
> > other stuff the following output:
> >
> > ==1786==
> > ==1786== Conditional jump or move depends on uninitialised value(s)
> > ==1786== at 0x43DA1112:
> > LiquidStyle::drawPrimitive(QStyle::PrimitiveElement, QPainter *, QRect
> > const &, QColorGroup const &, unsigned int, QStyleOption const &) const
> > (in /opt/kde3_1303/lib/kde3/plugins/styles/liquid.so)
> > ==1786== by 0x43DA6D16:
> > LiquidStyle::drawComplexControl(QStyle::ComplexControl, QPainter *,
> > QWidget const *, QRect const &, QColorGroup const &, unsigned int,
> > unsigned int, unsigned int, QStyleOption const &) const (in
> > /opt/kde3_1303/lib/kde3/plugins/styles/liquid.so)
> > ==1786== by 0x407B5BC1: KToolBarButton::drawButton(QPainter *)
> > (ktoolbarbutton.cpp:519)
> > ==1786== by 0x40D67483: QButton::paintEvent(QPaintEvent *) (in
> > /usr/lib/qt3/lib/libqt-mt.so.3.0.3)
>
> I saw this too when valgrinding Kopete, but only with Liquid and not with
> Highcolor. So it is definitely a problem that is only triggered by Liquid,
> but I haven't looked any further into it yet. Maybe it's because Lidquid
> does quite some magic in e.g. polish() to get all the mouse over stuff
> working correctly, that only Liquid triggers it?
Nope, it was a simple bug in Liquid. Recompiling liquid with
--enable-debug=full gave the line number away (hint to Matze! :-), after
which the fix was trivial. Try below patch.
Hmm, your backtrace is different, there might be more of these :-)
For Kopete this fixed the one I got in my output though.
Martijn
--- liquid.cpp.dist Tue Apr 23 21:53:57 2002
+++ liquid.cpp Tue Apr 23 21:54:46 2002
@@ -178,6 +178,7 @@
: KStyle(0, ThreeButtonScrollBar)
{
headerHoverID = -1;
+ currentHeader = 0L;
highlightWidget = NULL;
btnDict.setAutoDelete(true);
bevelFillDict.setAutoDelete(true);
More information about the kde-core-devel
mailing list