]> granicus.if.org Git - ejabberd/commitdiff
Unregister route at the very end
authorEvgeniy Khramtsov <ekhramtsov@process-one.net>
Sun, 13 Mar 2016 14:37:39 +0000 (17:37 +0300)
committerEvgeniy Khramtsov <ekhramtsov@process-one.net>
Sun, 13 Mar 2016 14:37:39 +0000 (17:37 +0300)
src/mod_pubsub.erl

index 38d4b7405a3945c09fea9a8ff487457ed69108da..6531ed8764c53930905fd19e9a404b5b9c3de393 100644 (file)
@@ -877,7 +877,6 @@ handle_info(_Info, State) ->
 %% @private
 terminate(_Reason,
            #state{host = Host, server_host = ServerHost, nodetree = TreePlugin, plugins = Plugins}) ->
-    ejabberd_router:unregister_route(Host),
     case lists:member(?PEPNODE, Plugins) of
        true ->
            ejabberd_hooks:delete(caps_add, ServerHost,
@@ -922,7 +921,8 @@ terminate(_Reason,
        Pid ->
            Pid ! stop
     end,
-    terminate_plugins(Host, ServerHost, Plugins, TreePlugin).
+    terminate_plugins(Host, ServerHost, Plugins, TreePlugin),
+    ejabberd_router:unregister_route(Host).
 
 %%--------------------------------------------------------------------
 %% Func: code_change(OldVsn, State, Extra) -> {ok, NewState}