24
1
mirror of https://github.com/processone/ejabberd.git synced 2024-07-14 23:44:18 +02:00

enforce pubsub cleaner

This commit is contained in:
Christophe Romain 2010-11-04 16:54:24 +01:00
parent 2e33904bb8
commit 70c1e1d0b1

View File

@ -24,6 +24,10 @@ purge() ->
[N]=mnesia:dirty_read({pubsub_node, K}), [N]=mnesia:dirty_read({pubsub_node, K}),
I=element(3,N), I=element(3,N),
lists:foreach(fun(JID) -> lists:foreach(fun(JID) ->
case mnesia:dirty_read({pubsub_state, {JID, I}}) of
[{pubsub_state, K, _, _, [{subscribed,S}]}] -> mnesia:dirty_delete({pubsub_subscription, S});
_ -> ok
end,
mnesia:dirty_delete({pubsub_state, {JID, I}}) mnesia:dirty_delete({pubsub_state, {JID, I}})
end, offline(pubsub_debug:subscribed(I))) end, offline(pubsub_debug:subscribed(I)))
end, mnesia:dirty_all_keys(pubsub_node)); end, mnesia:dirty_all_keys(pubsub_node));