Hello community,
here is the log from the commit of package thinkeramik
checked in at Mon Jul 10 17:20:39 CEST 2006.
--------
--- KDE/thinkeramik/thinkeramik.changes 2006-06-14 23:12:44.000000000 +0200
+++ thinkeramik/thinkeramik.changes 2006-07-10 11:35:03.000000000 +0200
@@ -1,0 +2,5 @@
+Mon Jul 10 11:34:30 CEST 2006 - dmueller@suse.de
+
+- fix memory leak in pixmap loader (#190110)
+
+-------------------------------------------------------------------
New:
----
fix-pixmaploader.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ thinkeramik.spec ++++++
--- /var/tmp/diff_new_pack.o35Wih/_old 2006-07-10 17:16:33.000000000 +0200
+++ /var/tmp/diff_new_pack.o35Wih/_new 2006-07-10 17:16:33.000000000 +0200
@@ -20,7 +20,7 @@
Group: System/GUI/KDE
Summary: Thin Keramik style for KDE
Version: 3.2.1
-Release: 25
+Release: 26
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Requires: thinkeramik-style
Source0: %{name}-%{version}.tar.bz2
@@ -29,6 +29,7 @@
Patch2: remove-kdefx-dependency.diff
Patch3: fix-combobox-edit-fields.diff
Patch4: gcc-4.1.diff
+Patch5: fix-pixmaploader.diff
%description
This is a plain-looking modification of the Keramik style.
@@ -37,7 +38,7 @@
Authors:
--------
- Arumi Kitajima
+ Arumi Kitajima
Keramik engine by:
Malte Starostik
@@ -69,6 +70,7 @@
%patch2
%patch3
%patch4
+%patch5
. /etc/opt/kde3/common_options
update_admin
@@ -112,6 +114,8 @@
/usr/lib/qt3/plugins/styles
%changelog -n thinkeramik
+* Mon Jul 10 2006 - dmueller@suse.de
+- fix memory leak in pixmap loader (#190110)
* Wed Jun 14 2006 - dmueller@suse.de
- build parallel
* Wed May 31 2006 - dmueller@suse.de
++++++ fix-pixmaploader.diff ++++++
------------------------------------------------------------------------
r559665 | orlovich | 2006-07-08 01:56:40 +0200 (Sat, 08 Jul 2006) | 4 lines
Fix memory leak with super-large widgets, reported by Martin Pley.
(Also fix my addy as I am touching the file)
------------------------------------------------------------------------
--- widget-engine/pixmaploader.cpp (revision 559664)
+++ widget-engine/pixmaploader.cpp (revision 559665)
@@ -290,13 +290,17 @@ QPixmap PixmapLoader::scale( int name, i
else
result = new QPixmap(img->smoothScale( width ? width : img->width(),
height ? height: img->height()));
+ delete img;
ThinKeramikCacheEntry* toAdd = new ThinKeramikCacheEntry(entry);
toAdd->m_pixmap = result;
- m_pixmapCache.insert(key, toAdd, result->width()*result->height()*result->depth()/8);
-
- delete img;
+ if (!m_pixmapCache.insert(key, toAdd, result->width()*result->height()*result->depth()/8)) {
+ QPixmap toRet = *result;
+ delete toAdd;
+ return toRet;
+ }
+
return *result;
}
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit-unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit-help@opensuse.org