aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChristophe Romain <christophe.romain@process-one.net>2008-12-08 21:47:50 +0000
committerChristophe Romain <christophe.romain@process-one.net>2008-12-08 21:47:50 +0000
commit23ce0b312dd141f1a9f2f1563bdbc40e0316d72d (patch)
tree6311c906b53422332c1754185b405b56112eab6a /src
parentreply to suscriptions options queries with unsupported feature error (EJAB-713) (diff)
remove pubsub_state record when unsubscribing node without affiliation (EJAB-776)
SVN Revision: 1717
Diffstat (limited to 'src')
-rw-r--r--src/mod_pubsub/node_default.erl4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/mod_pubsub/node_default.erl b/src/mod_pubsub/node_default.erl
index 97e363f79..9bf26b992 100644
--- a/src/mod_pubsub/node_default.erl
+++ b/src/mod_pubsub/node_default.erl
@@ -381,6 +381,10 @@ unsubscribe_node(Host, Node, Sender, Subscriber, _SubId) ->
%% Requesting entity is prohibited from unsubscribing entity
not Authorized ->
{error, ?ERR_FORBIDDEN};
+ %% Was just subscriber, remove the record
+ State#pubsub_state.affiliation == none ->
+ mnesia:delete({pubsub_state, State#pubsub_state.stateid}),
+ {result, default};
true ->
set_state(State#pubsub_state{subscription = none}),
{result, default}