diff options
author | Eric Williams | 2018-05-01 19:17:44 +0000 |
---|---|---|
committer | Eric Williams | 2018-05-01 20:34:56 +0000 |
commit | 574f2721edfda6c62b9b58519cb07216753dc055 (patch) | |
tree | 8eca56fd521eab4d7f9431e343638305850a99e2 | |
parent | 99125e810016a4062b588da674c59c13470abc05 (diff) | |
download | eclipse.platform.swt-574f2721edfda6c62b9b58519cb07216753dc055.tar.gz eclipse.platform.swt-574f2721edfda6c62b9b58519cb07216753dc055.tar.xz eclipse.platform.swt-574f2721edfda6c62b9b58519cb07216753dc055.zip |
Bug 533995: [GTK3] Native memory leak in gc.setBackground/setForeground
Free all strings returned by gtk_css_provider_to_string() to fix a
memory leak.
Change-Id: I94e45c2457bfbcf6970038f61926830c7d480f76
Signed-off-by: Eric Williams <ericwill@redhat.com>
-rw-r--r-- | bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java index 0f76b1af4b..a5e08f6653 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java @@ -1942,6 +1942,7 @@ String gtk_css_default_theme_values (int swt) { } byte [] themeBuffer = new byte [length]; C.memmove (themeBuffer, str, length); + OS.g_free(str); String cssOutput = new String (Converter.mbcsToWcs (themeBuffer)); // Parse the theme values based on the corresponding SWT value @@ -2210,6 +2211,7 @@ GdkRGBA gtk_css_parse_background (long /*int*/ provider, String precise) { int length = C.strlen (str); byte [] buffer = new byte [length]; C.memmove (buffer, str, length); + OS.g_free(str); String cssOutput = new String (Converter.mbcsToWcs (buffer)); String searched = ""; /* @@ -2274,6 +2276,7 @@ GdkRGBA gtk_css_parse_foreground (long /*int*/ provider, String precise) { int length = C.strlen (str); byte [] buffer = new byte [length]; C.memmove (buffer, str, length); + OS.g_free(str); String cssOutput = new String (Converter.mbcsToWcs (buffer)); String searched = ""; /* |