clean up credentials on OOM in process_config_first_time_only
authorChristian Dywan <christian.dywan@lanedo.com>
Mon, 17 Jan 2011 12:41:12 +0000 (12:41 +0000)
committerSimon McVittie <simon.mcvittie@collabora.co.uk>
Mon, 17 Jan 2011 12:41:15 +0000 (12:41 +0000)
Origin: vendor, Maemo
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=33128
Bug-NB: NB#180486
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
bus/bus.c

index 86a73fa..f892e26 100644 (file)
--- a/bus/bus.c
+++ b/bus/bus.c
@@ -372,11 +372,20 @@ process_config_first_time_only (BusContext       *context,
       if (!credentials)
         goto oom;
       if (!_dbus_string_append (&log_prefix, "[session "))
-        goto oom;
+        {
+          _dbus_credentials_unref (credentials);
+          goto oom;
+        }
       if (!_dbus_credentials_to_string_append (credentials, &log_prefix))
-        goto oom;
+        {
+          _dbus_credentials_unref (credentials);
+          goto oom;
+        }
       if (!_dbus_string_append (&log_prefix, "] "))
-        goto oom;
+        {
+          _dbus_credentials_unref (credentials);
+          goto oom;
+        }
       _dbus_credentials_unref (credentials);
     }
   if (!_dbus_string_steal_data (&log_prefix, &context->log_prefix))