Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/processone/ejabberd.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHolger Weiss <holger@zedat.fu-berlin.de>2016-06-22 23:36:27 +0300
committerHolger Weiss <holger@zedat.fu-berlin.de>2016-06-22 23:36:27 +0300
commit065f5272e640ea646d8d56343e3acae757773f00 (patch)
tree5d6f2f869437aaa030a56f0c6ea1e181a0a9e87e
parent751be3cca65d7d882d6bcaae52e7754e78e7f57a (diff)
mod_blocking_sql: Handle default list corner case
Handle the situation where a list of the name "Blocked contacts" was created by an XEP-0016 client, but no default list exists.
-rw-r--r--src/mod_blocking_sql.erl7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/mod_blocking_sql.erl b/src/mod_blocking_sql.erl
index fb8380e2c..bffe5bd25 100644
--- a/src/mod_blocking_sql.erl
+++ b/src/mod_blocking_sql.erl
@@ -25,7 +25,12 @@ process_blocklist_block(LUser, LServer, Filter) ->
Default = case mod_privacy_sql:sql_get_default_privacy_list_t(LUser) of
{selected, []} ->
Name = <<"Blocked contacts">>,
- mod_privacy_sql:sql_add_privacy_list(LUser, Name),
+ case mod_privacy_sql:sql_get_privacy_list_id_t(LUser, Name) of
+ {selected, []} ->
+ mod_privacy_sql:sql_add_privacy_list(LUser, Name);
+ {selected, [{_ID}]} ->
+ ok
+ end,
mod_privacy_sql:sql_set_default_privacy_list(LUser, Name),
Name;
{selected, [{Name}]} -> Name