]> granicus.if.org Git - ejabberd/commitdiff
Fix room state cleanup from db on change of persistent option change
authorPaweł Chmielowski <pchmielowski@process-one.net>
Tue, 30 Apr 2019 15:34:49 +0000 (17:34 +0200)
committerPaweł Chmielowski <pchmielowski@process-one.net>
Tue, 30 Apr 2019 15:34:49 +0000 (17:34 +0200)
src/mod_muc_room.erl

index 2e3c2f14667bf2fb27c2295c9d2536dabbe89cfa..f972a5feb03a31c8c2568d2e64416f70c1919acf 100644 (file)
@@ -3486,15 +3486,13 @@ change_config(Config, StateData) ->
                 end,
                 store_room(StateData1),
                 StateData1;
-            {WasPersistent, false} ->
-               maybe_forget_room(StateData1),
-               case WasPersistent of
-                   true ->
-                       Affiliations = get_affiliations(StateData),
-                       StateData1#state{affiliations = Affiliations};
-                   _ ->
-                       StateData1
-               end
+            {true, false} ->
+               Affiliations = get_affiliations(StateData),
+               maybe_forget_room(StateData),
+               StateData1#state{affiliations = Affiliations};
+           _ ->
+               maybe_forget_room(StateData),
+               StateData1
         end,
     case {(StateData#state.config)#config.members_only,
          Config#config.members_only} of