diff --git a/src/mod_pubsub/nodetree_default.erl b/src/mod_pubsub/nodetree_default.erl index a7360bc21..3c8a63e6b 100644 --- a/src/mod_pubsub/nodetree_default.erl +++ b/src/mod_pubsub/nodetree_default.erl @@ -144,11 +144,15 @@ create_node(Key, Node, Type, Owner, Options) -> {[], true}; _ -> Parent = lists:sublist(Node, length(Node) - 1), - (Parent == []) orelse + case Parent of + [] -> + {[], true}; + _ -> case mnesia:read({pubsub_node, {Key, Parent}}) of [] -> {Parent, false}; _ -> {Parent, true} end + end end, case ParentExists of true ->