From: Christophe Romain Date: Thu, 29 Sep 2016 09:20:56 +0000 (+0200) Subject: PubSub: fix error type on item deletion with insufficient priviledge X-Git-Tag: 16.12~29 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a42bf67957c18d66c05fac3f651ab198b59bef06;p=ejabberd PubSub: fix error type on item deletion with insufficient priviledge --- diff --git a/src/node_flat.erl b/src/node_flat.erl index 2fb24ee69..7ead1d351 100644 --- a/src/node_flat.erl +++ b/src/node_flat.erl @@ -419,11 +419,11 @@ delete_item(Nidx, Publisher, PublishModel, ItemId) -> #pubsub_state{affiliation = Affiliation, items = Items} = GenState, Allowed = Affiliation == publisher orelse Affiliation == owner orelse - PublishModel == open orelse - case get_item(Nidx, ItemId) of - {result, #pubsub_item{creation = {_, GenKey}}} -> true; - _ -> false - end, + (PublishModel == open andalso + case get_item(Nidx, ItemId) of + {result, #pubsub_item{creation = {_, GenKey}}} -> true; + _ -> false + end), if not Allowed -> {error, ?ERR_FORBIDDEN}; true -> diff --git a/src/node_flat_sql.erl b/src/node_flat_sql.erl index 86375eaec..e7e5fb417 100644 --- a/src/node_flat_sql.erl +++ b/src/node_flat_sql.erl @@ -271,11 +271,11 @@ delete_item(Nidx, Publisher, PublishModel, ItemId) -> {result, Affiliation} = get_affiliation(Nidx, GenKey), Allowed = Affiliation == publisher orelse Affiliation == owner orelse - PublishModel == open orelse - case get_item(Nidx, ItemId) of - {result, #pubsub_item{creation = {_, GenKey}}} -> true; - _ -> false - end, + (PublishModel == open andalso + case get_item(Nidx, ItemId) of + {result, #pubsub_item{creation = {_, GenKey}}} -> true; + _ -> false + end), if not Allowed -> {error, ?ERR_FORBIDDEN}; true ->