aboutsummaryrefslogtreecommitdiff
path: root/src/mod_muc_admin.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/mod_muc_admin.erl')
-rw-r--r--src/mod_muc_admin.erl11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/mod_muc_admin.erl b/src/mod_muc_admin.erl
index 55f182ba3..feaa42b1f 100644
--- a/src/mod_muc_admin.erl
+++ b/src/mod_muc_admin.erl
@@ -529,7 +529,9 @@ destroy_rooms_file(Filename) ->
read_rooms(_F, eof, L) ->
L;
-
+read_rooms(F, no_room, L) ->
+ RJID2 = read_room(F),
+ read_rooms(F, RJID2, L);
read_rooms(F, RJID, L) ->
RJID2 = read_room(F),
read_rooms(F, RJID2, [RJID | L]).
@@ -548,9 +550,12 @@ read_room(F) ->
%% This function is quite rudimentary
%% and may not be accurate
split_roomjid(RoomJID) ->
- [Name, Host] = binary:split(RoomJID, <<"@">>),
+ split_roomjid2(binary:split(RoomJID, <<"@">>)).
+split_roomjid2([Name, Host]) ->
[_MUC_service_name, ServerHost] = binary:split(Host, <<".">>),
- {Name, Host, ServerHost}.
+ {Name, Host, ServerHost};
+split_roomjid2(_) ->
+ no_room.
%%----------------------------
%% Create Rooms in File