diff options
author | Holger Weiss <holger@zedat.fu-berlin.de> | 2016-06-22 23:36:27 +0300 |
---|---|---|
committer | Holger Weiss <holger@zedat.fu-berlin.de> | 2016-06-22 23:36:27 +0300 |
commit | 065f5272e640ea646d8d56343e3acae757773f00 (patch) | |
tree | 5d6f2f869437aaa030a56f0c6ea1e181a0a9e87e | |
parent | 751be3cca65d7d882d6bcaae52e7754e78e7f57a (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.erl | 7 |
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 |