From: Brandon Casey <>

Rather than carefully allocating memory for sprintf() to write into,
let's make use of the glib helper function g_strdup_printf(), which
makes things a lot easier and less error-prone.

Signed-off-by: Brandon Casey <>
 .../gnome-keyring/git-credential-gnome-keyring.c           | 14 +++-----------
 1 file changed, 3 insertions(+), 11 deletions(-)

diff --git a/contrib/credential/gnome-keyring/git-credential-gnome-keyring.c 
index 43b19dd..b692e1f 100644
--- a/contrib/credential/gnome-keyring/git-credential-gnome-keyring.c
+++ b/contrib/credential/gnome-keyring/git-credential-gnome-keyring.c
@@ -112,21 +112,13 @@ static inline char *xstrdup(const char *str)
 /* create a special keyring option string, if path is given */
 static char* keyring_object(struct credential *c)
-       char* object = NULL;
        if (!c->path)
-               return object;
-       object = (char*) malloc(strlen(c->host)+strlen(c->path)+8);
-       if (!object)
-               die_errno(errno);
+               return NULL;
        if (c->port)
-               sprintf(object,"%s:%hd/%s",c->host,c->port,c->path);
-       else
-               sprintf(object,"%s/%s",c->host,c->path);
+               return g_strdup_printf("%s:%hd/%s", c->host, c->port, c->path);
-       return object;
+       return g_strdup_printf("%s/%s", c->host, c->path);
 static int keyring_get(struct credential *c)

This email message is for the sole use of the intended recipient(s) and may 
confidential information.  Any unauthorized review, use, disclosure or 
is prohibited.  If you are not the intended recipient, please contact the 
sender by
reply email and destroy all copies of the original message.
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to
More majordomo info at

Reply via email to