Do not free source, it can be source="" --- util.c.orig 2007-07-20 18:45:08 +0400 +++ util.c 2007-10-11 01:54:17 +0400 @@ -996,7 +996,6 @@ gchar *h_strdup_cprintf(const gchar * fo if (source) { retn = g_strconcat(source, buffer, NULL); g_free(buffer); - g_free(source); } else { retn = buffer; }