diff options
author | Přemysl Eric Janouch <p@janouch.name> | 2021-11-23 17:12:31 +0100 |
---|---|---|
committer | Přemysl Eric Janouch <p@janouch.name> | 2021-11-23 17:13:21 +0100 |
commit | fee901a5901d4bbacbf3ce90bcc3321a5c5e721e (patch) | |
tree | 6294de3e9050dc3435aaefc4cb1e22903f0c0558 | |
parent | 7ab1a6d2465dabc37e3e5f751de6e07011ee4b72 (diff) | |
download | fiv-fee901a5901d4bbacbf3ce90bcc3321a5c5e721e.tar.gz fiv-fee901a5901d4bbacbf3ce90bcc3321a5c5e721e.tar.xz fiv-fee901a5901d4bbacbf3ce90bcc3321a5c5e721e.zip |
Improve memory management
-rw-r--r-- | fastiv-browser.c | 6 | ||||
-rw-r--r-- | fastiv.c | 3 |
2 files changed, 4 insertions, 5 deletions
diff --git a/fastiv-browser.c b/fastiv-browser.c index f130473..0ed8c50 100644 --- a/fastiv-browser.c +++ b/fastiv-browser.c @@ -73,8 +73,7 @@ static void entry_free(Entry *self) { g_free(self->filename); - if (self->thumbnail) - cairo_surface_destroy(self->thumbnail); + g_clear_pointer(&self->thumbnail, cairo_surface_destroy); g_clear_object(&self->icon); } @@ -349,8 +348,7 @@ entry_add_thumbnail(gpointer data, gpointer user_data) { Entry *self = data; g_clear_object(&self->icon); - if (self->thumbnail) - cairo_surface_destroy(self->thumbnail); + g_clear_pointer(&self->thumbnail, cairo_surface_destroy); FastivBrowser *browser = FASTIV_BROWSER(user_data); self->thumbnail = rescale_thumbnail( @@ -425,7 +425,7 @@ on_key_press(G_GNUC_UNUSED GtkWidget *widget, GdkEventKey *event, switch (event->keyval) { case GDK_KEY_Escape: case GDK_KEY_q: - gtk_main_quit(); + gtk_widget_destroy(g.window); return TRUE; case GDK_KEY_o: @@ -598,6 +598,7 @@ main(int argc, char *argv[]) gtk_css_provider_load_from_data(provider, style, strlen(style), NULL); gtk_style_context_add_provider_for_screen(gdk_screen_get_default(), GTK_STYLE_PROVIDER(provider), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION); + g_object_unref(provider); g.view_scroller = gtk_scrolled_window_new(NULL, NULL); g.view = g_object_new(FASTIV_TYPE_VIEW, NULL); |