aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorHolger Weiss <holger@zedat.fu-berlin.de>2014-08-19 11:12:51 +0200
committerHolger Weiss <holger@zedat.fu-berlin.de>2014-08-19 11:12:51 +0200
commit7274dafe10459ec6eb004e9126b899db59f9b68f (patch)
tree93f4784b2f57e963237b40a762f4c16f9b7a455b /src
parentMerge pull request #277 from weiss/xep-0198 (diff)
Store persistent MUC room during creation
Make sure persistent rooms are stored to the database. Without this change, a room got lost if the 'persistent' flag was handed over to mod_muc:create_room/5 and the server was then restartet before any activity took place in that room.
Diffstat (limited to 'src')
-rw-r--r--src/mod_muc_room.erl7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mod_muc_room.erl b/src/mod_muc_room.erl
index 3842fde40..6a2a91d21 100644
--- a/src/mod_muc_room.erl
+++ b/src/mod_muc_room.erl
@@ -127,6 +127,13 @@ init([Host, ServerHost, Access, Room, HistorySize, RoomShaper, Creator, _Nick, D
just_created = true,
room_shaper = Shaper}),
State1 = set_opts(DefRoomOpts, State),
+ if (State1#state.config)#config.persistent ->
+ mod_muc:store_room(State1#state.server_host,
+ State1#state.host,
+ State1#state.room,
+ make_opts(State1));
+ true -> ok
+ end,
?INFO_MSG("Created MUC room ~s@~s by ~s",
[Room, Host, jlib:jid_to_string(Creator)]),
add_to_log(room_existence, created, State1),