From bc466543290ccb195fd17267641bc759309a8d02 Mon Sep 17 00:00:00 2001 From: Markus Anschober Date: Sun, 3 Feb 2019 20:52:33 +0100 Subject: Gtk: Fix memory leak on image loading --- nigui.nimble | 2 +- src/nigui/private/gtk3/platform_impl.nim | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/nigui.nimble b/nigui.nimble index 4f5e524..dfd9588 100644 --- a/nigui.nimble +++ b/nigui.nimble @@ -1,6 +1,6 @@ # Package -version = "0.1.0" +version = "0.1.1" author = "Simon Krauter" description = "Cross-platform, desktop GUI toolkit using native widgets." license = "MIT" diff --git a/src/nigui/private/gtk3/platform_impl.nim b/src/nigui/private/gtk3/platform_impl.nim index c30cbd0..bebb6f7 100755 --- a/src/nigui/private/gtk3/platform_impl.nim +++ b/src/nigui/private/gtk3/platform_impl.nim @@ -631,6 +631,7 @@ method loadFromFile(image: Image, filePath: string) = var pixbuf = gdk_pixbuf_new_from_file(filePath, error.addr) if pixbuf == nil: pRaiseGError(error) + defer: g_object_unref(pixbuf) canvas.fSurface = gdk_cairo_surface_create_from_pixbuf(pixbuf, 1, nil) canvas.fCairoContext = cairo_create(canvas.fSurface) canvas.fData = cairo_image_surface_get_data(canvas.fSurface) -- cgit v1.2.3