diff --git a/konaclient-gtk/previewwidget.c b/konaclient-gtk/previewwidget.c index 1066c25..ca51ebf 100644 --- a/konaclient-gtk/previewwidget.c +++ b/konaclient-gtk/previewwidget.c @@ -6,7 +6,7 @@ G_DEFINE_TYPE(PreviewWidget, PreviewWidget, GTK_TYPE_BIN) void kona_download_image( GtkWidget *widget, gpointer data ) { - PreviewWidget_set_image(data, "/home/kurisu/Pictures/Wallpapers/preview.jpg"); // DEBUG ONLY! + PreviewWidget_set_image(data, "/home/kurisu/Pictures/Screenshot from 2016-03-07 09-16-18.png"); // DEBUG ONLY! } void PreviewWidget_set_image(PreviewWidget *widget, gchar *url) { @@ -18,7 +18,7 @@ void PreviewWidget_set_image(PreviewWidget *widget, gchar *url) { widgets = gtk_container_get_children(GTK_CONTAINER(widget)); w = widgets->data; // Grab GtkImage - GdkPixbuf *p; + GdkPixbuf *p, *ps; p = gdk_pixbuf_new_from_file(url, NULL); iheight = (float) gdk_pixbuf_get_height(p); iwidth = (float) gdk_pixbuf_get_width(p); @@ -31,9 +31,9 @@ void PreviewWidget_set_image(PreviewWidget *widget, gchar *url) { height = iheight / iwidth * 200; } - - p = gdk_pixbuf_scale_simple(p, width, height, GDK_INTERP_BILINEAR); - gtk_image_set_from_pixbuf(GTK_IMAGE(w), p); + ps = gdk_pixbuf_scale_simple(p, width, height, GDK_INTERP_BILINEAR); + g_object_unref(p); + gtk_image_set_from_pixbuf(GTK_IMAGE(w), ps); gtk_widget_set_visible(w, TRUE); @@ -78,5 +78,8 @@ GtkWidget *PreviewWidget_new(KonaImage* ki) void debugfoo(GtkButton *widget, GtkImage *img) { + gtk_image_clear(img); + g_object_unref(gtk_image_get_pixbuf(img)); + gtk_widget_destroy(img); }