diff options
author | taw27 <taw27@bf6ca9ba-c028-0410-8290-897cf20841d1> | 2007-11-19 17:16:28 +0000 |
---|---|---|
committer | taw27 <taw27@bf6ca9ba-c028-0410-8290-897cf20841d1> | 2007-11-19 17:16:28 +0000 |
commit | c9d4b47c809d1035e3bc26ad7c9a013f610bee02 (patch) | |
tree | ddadc92f9dc36b8cb6bd4eca49de373e1eca8222 /src/imagedisplay.c | |
parent | 570072f597cb0b2794c8707f080d34dfbb30c372 (diff) |
Fix more memory leaks
git-svn-id: svn://cook.msm.cam.ac.uk:745/diff-tomo/dtr@199 bf6ca9ba-c028-0410-8290-897cf20841d1
Diffstat (limited to 'src/imagedisplay.c')
-rw-r--r-- | src/imagedisplay.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/imagedisplay.c b/src/imagedisplay.c index 8e1858e..1caaf9e 100644 --- a/src/imagedisplay.c +++ b/src/imagedisplay.c @@ -46,6 +46,10 @@ static void imagedisplay_rescale(ImageDisplay *imagedisplay, unsigned int v_w, u v_h = v_w/aspect_image; } + if ( imagedisplay->pixbuf_scaled ) { + g_object_unref(imagedisplay->pixbuf_scaled); + } + /* Create the scaled pixbuf from the 8-bit display data */ imagedisplay->pixbuf_scaled = gdk_pixbuf_scale_simple(imagedisplay->pixbuf, v_w, v_h, GDK_INTERP_BILINEAR); imagedisplay->view_width = v_w; @@ -295,6 +299,7 @@ ImageDisplay *imagedisplay_open_with_message(ImageRecord imagerecord, const char imagedisplay->flags = flags; imagedisplay->marks = NULL; imagedisplay->pixbuf = NULL; + imagedisplay->pixbuf_scaled = NULL; imagedisplay->realised = FALSE; gtk_window_set_title(GTK_WINDOW(imagedisplay->window), imagedisplay->title); |