diff --git a/telegram-base.c b/telegram-base.c index 1b575f3..1b1d4d2 100644 --- a/telegram-base.c +++ b/telegram-base.c @@ -544,8 +544,8 @@ PurpleConversation *chat_show (PurpleConnection *gc, int id) { PurpleConversation *convo = purple_find_chat(gc, id); if (! convo) { gchar *name = g_strdup_printf ("%d", id); - if (! g_hash_table_contains (conn->joining_chats, name)) { - g_hash_table_insert(conn->joining_chats, name, 0); + if (! g_hash_table_lookup (conn->joining_chats, name)) { + g_hash_table_insert (conn->joining_chats, name, (void *)1); tgl_do_get_chat_info (conn->TLS, TGL_MK_CHAT(id), 0, on_chat_get_info, NULL); } else { g_free(name); diff --git a/tgp-structs.c b/tgp-structs.c index 138e777..3ddb012 100644 --- a/tgp-structs.c +++ b/tgp-structs.c @@ -104,7 +104,7 @@ connection_data *connection_data_init (struct tgl_state *TLS, PurpleConnection * conn->pa = pa; conn->new_messages = g_queue_new (); conn->pending_reads = g_queue_new (); - conn->joining_chats = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free); + conn->joining_chats = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL); return conn; }