--- libbalsa/imap-server.c.orig 2004-09-12 23:40:40.511733893 +0200 +++ libbalsa/imap-server.c 2004-09-12 23:43:51.570710696 +0200 @@ -125,13 +125,15 @@ static void libbalsa_imap_server_set_host(LibBalsaServer * server, const gchar * host, gboolean use_ssl) { - LibBalsaImapServer *imap_server = LIBBALSA_IMAP_SERVER(server); - G_LOCK(imap_servers); - g_hash_table_steal(imap_servers, imap_server->key); - g_free(imap_server->key); - imap_server->key = g_strdup_printf("%s@%s", server->user, host); - g_hash_table_insert(imap_servers, imap_server->key, imap_server); - G_UNLOCK(imap_servers); + if(server->user && host) { /* we have been initialized... */ + LibBalsaImapServer *imap_server = LIBBALSA_IMAP_SERVER(server); + G_LOCK(imap_servers); + g_hash_table_steal(imap_servers, imap_server->key); + g_free(imap_server->key); + imap_server->key = g_strdup_printf("%s@%s", server->user, host); + g_hash_table_insert(imap_servers, imap_server->key, imap_server); + G_UNLOCK(imap_servers); + } (parent_class)->set_host(server, host, use_ssl); } static void