diff options
author | Arun Thondapu <arunkumar.thondapu@in.ibm.com> | 2011-12-05 18:15:51 -0500 |
---|---|---|
committer | Bogdan Gheorghe <gheorghe@ca.ibm.com> | 2011-12-05 18:15:51 -0500 |
commit | 5c25a7e7d210c3ae9b3cfda453055f4312507ebd (patch) | |
tree | 604ecd3025b149f00d6d1163a904d45a592fc715 /bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeItem.java | |
parent | d4dc76f502521d658d8db0cfa2a42de71bc22567 (diff) | |
download | eclipse.platform.swt-5c25a7e7d210c3ae9b3cfda453055f4312507ebd.tar.gz eclipse.platform.swt-5c25a7e7d210c3ae9b3cfda453055f4312507ebd.tar.xz eclipse.platform.swt-5c25a7e7d210c3ae9b3cfda453055f4312507ebd.zip |
364593 - Memory leak in Table when changing cell background colors
Diffstat (limited to 'bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeItem.java')
-rw-r--r-- | bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeItem.java | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeItem.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeItem.java index c40dea482d..cfa542dc20 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeItem.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeItem.java @@ -229,6 +229,7 @@ Color _getBackground (int index) { if (ptr [0] == 0) return _getBackground (); GdkColor gdkColor = new GdkColor (); OS.memmove (gdkColor, ptr [0], GdkColor.sizeof); + OS.gdk_color_free (ptr [0]); return Color.gtk_new (display, gdkColor); } @@ -244,6 +245,7 @@ Color _getForeground () { if (ptr [0] == 0) return parent.getForeground (); GdkColor gdkColor = new GdkColor (); OS.memmove (gdkColor, ptr [0], GdkColor.sizeof); + OS.gdk_color_free (ptr [0]); return Color.gtk_new (display, gdkColor); } @@ -256,6 +258,7 @@ Color _getForeground (int index) { if (ptr [0] == 0) return _getForeground (); GdkColor gdkColor = new GdkColor (); OS.memmove (gdkColor, ptr [0], GdkColor.sizeof); + OS.gdk_color_free (ptr [0]); return Color.gtk_new (display, gdkColor); } @@ -268,6 +271,7 @@ Image _getImage (int index) { if (ptr [0] == 0) return null; ImageList imageList = parent.imageList; int imageIndex = imageList.indexOf (ptr [0]); + OS.g_object_unref (ptr [0]); if (imageIndex == -1) return null; return imageList.get (imageIndex); } |