From 065f5272e640ea646d8d56343e3acae757773f00 Mon Sep 17 00:00:00 2001 From: Holger Weiss Date: Wed, 22 Jun 2016 22:36:27 +0200 Subject: [PATCH] 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. --- src/mod_blocking_sql.erl | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) 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