[gnome-online-accounts/rhel-7.1: 15/34] identity: fix another principal leak



commit 7f485263b0b3aca4c11453a610ba1a044b1a1781
Author: Ray Strode <rstrode redhat com>
Date:   Fri May 9 07:29:45 2014 -0400

    identity: fix another principal leak
    
    Spotted by valgrind.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=729865

 src/goaidentity/goakerberosidentity.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)
---
diff --git a/src/goaidentity/goakerberosidentity.c b/src/goaidentity/goakerberosidentity.c
index 9308295..f06bf30 100644
--- a/src/goaidentity/goakerberosidentity.c
+++ b/src/goaidentity/goakerberosidentity.c
@@ -243,7 +243,7 @@ get_identifier (GoaKerberosIdentity  *self,
   krb5_principal principal;
   krb5_error_code error_code;
   char *unparsed_name;
-  char *identifier;
+  char *identifier = NULL;
 
   if (self->priv->credentials_cache == NULL)
     return NULL;
@@ -289,12 +289,14 @@ get_identifier (GoaKerberosIdentity  *self,
       goa_debug ("GoaKerberosIdentity: Error parsing principal identity name: %s",
                error_message);
       krb5_free_error_message (self->priv->kerberos_context, error_message);
-      return NULL;
+      goto out;
     }
 
   identifier = g_strdup (unparsed_name);
   krb5_free_unparsed_name (self->priv->kerberos_context, unparsed_name);
 
+out:
+  krb5_free_principal (self->priv->kerberos_context, principal);
   return identifier;
 }
 


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