summaryrefslogtreecommitdiff
path: root/toxcore/group.c
diff options
context:
space:
mode:
authorirungentoo <irungentoo@gmail.com>2014-10-01 16:07:45 -0400
committerirungentoo <irungentoo@gmail.com>2014-10-01 16:07:45 -0400
commitde1a531cb1b0b07a67f42d0e6212d9d72501f1e6 (patch)
tree8e940ef534708add54e7e4d2665acf60b8cba3bc /toxcore/group.c
parente304fa847ed18605b13b68558bb88da151a28c1c (diff)
del_groupchat and kill_groupchats now work properly.
Diffstat (limited to 'toxcore/group.c')
-rw-r--r--toxcore/group.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/toxcore/group.c b/toxcore/group.c
index d5364420..5e070623 100644
--- a/toxcore/group.c
+++ b/toxcore/group.c
@@ -524,6 +524,16 @@ int del_groupchat(Group_Chats *g_c, int groupnumber)
524 if (!g) 524 if (!g)
525 return -1; 525 return -1;
526 526
527 unsigned int i;
528
529 for (i = 0; i < MAX_GROUP_CONNECTIONS; ++i) {
530 if (g->close[i].type == GROUPCHAT_CLOSE_NONE)
531 continue;
532
533 g->close[i].type = GROUPCHAT_CLOSE_NONE;
534 kill_friend_connection(g_c->fr_c, g->close[i].number);
535 }
536
527 free(g->group); 537 free(g->group);
528 return wipe_group_chat(g_c, groupnumber); 538 return wipe_group_chat(g_c, groupnumber);
529} 539}
@@ -1171,7 +1181,13 @@ void do_groupchats(Group_Chats *g_c)
1171/* Free everything related with group chats. */ 1181/* Free everything related with group chats. */
1172void kill_groupchats(Group_Chats *g_c) 1182void kill_groupchats(Group_Chats *g_c)
1173{ 1183{
1174 //TODO 1184 unsigned int i;
1185
1186 for (i = 0; i < g_c->num_chats; ++i) {
1187 del_groupchat(g_c, i);
1188 }
1189
1190 m_callback_group_invite(g_c->m, NULL);
1175 g_c->m->group_chat_object = 0; 1191 g_c->m->group_chat_object = 0;
1176 free(g_c); 1192 free(g_c);
1177} 1193}