[Panel-devel] Infinite rekursion follow up
Beat Wolf
asraniel at fryx.ch
Wed Sep 12 12:05:22 CEST 2007
Hi,
sorry if that message was sent twice, but i accidentaly hit the send button
(well, shortcut) while typing.
i posted a infinite rekursion bug some days ago on this mailing list. sadly i
got no answer.
So i did some research and that is what i found out:
I think it has something to do with the caching feature. When i loaded the
notes plasmaoid i saw for a milisecond the real (yellow) background of it,
but it imediately changed to that rekursive plasma desktop background.
Now i looked around the sourcecode and saw that in svg.cpp (in plasma) there
is a caching method that does not render the svg twice. i then commented this
section of the code:
if (QPixmapCache::find(id, p)) {
kDebug() << "found cached version of " << id;
return;
} else {
kDebug() << "didn't find cached version of " << id << ", so
re-rendering";
}
in void findInCache(QPixmap& p, const QString& elementId)
by commenting out that code, the notes plasmaoid is rendered correctly.
The bug is still here in the commit log plasmaoid and a few others. but the
commit log plasmaoid seems to be rendered in a different way (it uses the
standard background), so i couldnt figure out where the bug is there, but i
suppose it's something similar.
here another screenshot of the notes plasmaoid if the caching feature isnt
commented out: http://www.fryx.ch/Asraniel/plasmabug6.png
Beat Wolf
More information about the Panel-devel
mailing list