[gnome-shell/gnome-3-2] browser-plugin: Fix memory leak when passing an invalid UUID



commit ab4c160f9d1de1a7a6af0633bf6581a128a3dac3
Author: Jasper St. Pierre <jstpierre mecheye net>
Date:   Tue Dec 6 15:00:52 2011 -0500

    browser-plugin: Fix memory leak when passing an invalid UUID
    
    https://bugzilla.gnome.org/show_bug.cgi?id=665261

 browser-plugin/browser-plugin.c |   20 ++++++++++++++++----
 1 files changed, 16 insertions(+), 4 deletions(-)
---
diff --git a/browser-plugin/browser-plugin.c b/browser-plugin/browser-plugin.c
index fccb061..a80a492 100644
--- a/browser-plugin/browser-plugin.c
+++ b/browser-plugin/browser-plugin.c
@@ -480,7 +480,10 @@ plugin_install_extension (PluginObject *obj,
 {
   gchar *uuid_str = g_strndup (uuid.UTF8Characters, uuid.UTF8Length);
   if (!uuid_is_valid (uuid_str))
-    return FALSE;
+    {
+      g_free (uuid_str);
+      return FALSE;
+    }
 
   g_dbus_proxy_call (obj->proxy,
                      "InstallRemoteExtension",
@@ -509,7 +512,10 @@ plugin_uninstall_extension (PluginObject *obj,
 
   uuid_str = g_strndup (uuid.UTF8Characters, uuid.UTF8Length);
   if (!uuid_is_valid (uuid_str))
-    return FALSE;
+    {
+      g_free (uuid_str);
+      return FALSE;
+    }
 
   res = g_dbus_proxy_call_sync (obj->proxy,
                                 "UninstallExtension",
@@ -543,7 +549,10 @@ plugin_get_info (PluginObject *obj,
 
   uuid_str = g_strndup (uuid.UTF8Characters, uuid.UTF8Length);
   if (!uuid_is_valid (uuid_str))
-    return FALSE;
+    {
+      g_free (uuid_str);
+      return FALSE;
+    }
 
   res = g_dbus_proxy_call_sync (obj->proxy,
                                 "GetExtensionInfo",
@@ -576,7 +585,10 @@ plugin_get_errors (PluginObject *obj,
 
   uuid_str = g_strndup (uuid.UTF8Characters, uuid.UTF8Length);
   if (!uuid_is_valid (uuid_str))
-    return FALSE;
+    {
+      g_free (uuid_str);
+      return FALSE;
+    }
 
   res = g_dbus_proxy_call_sync (obj->proxy,
                                 "GetExtensionErrors",



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]