diff options
author | Elliott Sales de Andrade <quantum.analyst@gmail.com> | 2023-03-23 22:03:45 -0500 |
---|---|---|
committer | Elliott Sales de Andrade <quantum.analyst@gmail.com> | 2023-03-23 22:03:45 -0500 |
commit | ddbb62d46470ba81a3cd2ec91febe6d11e3f34e0 (patch) | |
tree | e2169f7c89e68fc2e403803f9ce7d3d619a56620 /libpurple/purplegdkpixbuf.c | |
parent | 16071bc64088b65c889ddbc993f8f52cecace8ed (diff) | |
download | pidgin-ddbb62d46470ba81a3cd2ec91febe6d11e3f34e0.tar.gz |
Fix leaked errors
And also simplify some cases with `g_clear_error`.
Testing Done:
Compiled and ran tests in valgrind, though it never noticed these anyway.
Reviewed at https://reviews.imfreedom.org/r/2384/
Diffstat (limited to 'libpurple/purplegdkpixbuf.c')
-rw-r--r-- | libpurple/purplegdkpixbuf.c | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/libpurple/purplegdkpixbuf.c b/libpurple/purplegdkpixbuf.c index 570563df11..4691032b4f 100644 --- a/libpurple/purplegdkpixbuf.c +++ b/libpurple/purplegdkpixbuf.c @@ -136,8 +136,7 @@ static GObject *purple_gdk_pixbuf_from_data_helper(const guchar *buf, gsize coun purple_debug_warning("gtkutils", "gdk_pixbuf_loader_write() " "failed with size=%" G_GSIZE_FORMAT ": %s\n", count, error ? error->message : "(no error message)"); - if (error) - g_error_free(error); + g_clear_error(&error); g_object_unref(G_OBJECT(loader)); return NULL; } @@ -146,8 +145,7 @@ static GObject *purple_gdk_pixbuf_from_data_helper(const guchar *buf, gsize coun purple_debug_warning("gtkutils", "gdk_pixbuf_loader_close() " "failed for image of size %" G_GSIZE_FORMAT ": %s\n", count, error ? error->message : "(no error message)"); - if (error) - g_error_free(error); + g_clear_error(&error); g_object_unref(G_OBJECT(loader)); return NULL; } @@ -198,10 +196,8 @@ GdkPixbuf *purple_gdk_pixbuf_new_from_file(const gchar *filename) pixbuf ? "something" : "nothing", filename, error ? error->message : "(no error message)"); - if (error) - g_error_free(error); - if (pixbuf) - g_object_unref(G_OBJECT(pixbuf)); + g_clear_error(&error); + g_clear_object(&pixbuf); return NULL; } @@ -224,10 +220,8 @@ GdkPixbuf *purple_gdk_pixbuf_new_from_file_at_size(const char *filename, int wid pixbuf ? "something" : "nothing", filename, error ? error->message : "(no error message)"); - if (error) - g_error_free(error); - if (pixbuf) - g_object_unref(G_OBJECT(pixbuf)); + g_clear_error(&error); + g_clear_object(&pixbuf); return NULL; } |