aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPřemysl Eric Janouch <p@janouch.name>2021-11-23 17:12:31 +0100
committerPřemysl Eric Janouch <p@janouch.name>2021-11-23 17:13:21 +0100
commitfee901a5901d4bbacbf3ce90bcc3321a5c5e721e (patch)
tree6294de3e9050dc3435aaefc4cb1e22903f0c0558
parent7ab1a6d2465dabc37e3e5f751de6e07011ee4b72 (diff)
downloadfiv-fee901a5901d4bbacbf3ce90bcc3321a5c5e721e.tar.gz
fiv-fee901a5901d4bbacbf3ce90bcc3321a5c5e721e.tar.xz
fiv-fee901a5901d4bbacbf3ce90bcc3321a5c5e721e.zip
Improve memory management
-rw-r--r--fastiv-browser.c6
-rw-r--r--fastiv.c3
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(
diff --git a/fastiv.c b/fastiv.c
index 880d91f..5aabd46 100644
--- a/fastiv.c
+++ b/fastiv.c
@@ -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);