diff options
author | James Booth <boothj5@gmail.com> | 2014-04-23 22:19:14 +0100 |
---|---|---|
committer | James Booth <boothj5@gmail.com> | 2014-04-23 22:19:14 +0100 |
commit | c7b3ff02ff00c8266710a11dc5728f769d643570 (patch) | |
tree | ddede67e28d562335e6cfb84cb34deea819a84ff /src/server_events.c | |
parent | 4384a1f4688968bcf621ddcaae58438374cad29d (diff) | |
download | profani-tty-c7b3ff02ff00c8266710a11dc5728f769d643570.tar.gz |
Rejoin private rooms after reconnecting
Diffstat (limited to 'src/server_events.c')
-rw-r--r-- | src/server_events.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/server_events.c b/src/server_events.c index faedac83..d18f1beb 100644 --- a/src/server_events.c +++ b/src/server_events.c @@ -94,6 +94,18 @@ handle_login_account_success(char *account_name) ui_handle_login_account_success(account); + // attempt to rejoin rooms with passwords + GList *curr = muc_get_active_room_list(); + while (curr != NULL) { + char *password = muc_get_room_password(curr->data); + if (password != NULL) { + char *nick = muc_get_room_nick(curr->data); + presence_join_room(curr->data, nick, password); + } + curr = g_list_next(curr); + } + g_list_free(curr); + log_info("%s logged in successfully", account->jid); account_free(account); } |