From: Paweł Chmielowski Date: Tue, 30 Apr 2019 16:33:12 +0000 (+0200) Subject: Sqlite doesn't recognize concat() so use || on it instead X-Git-Tag: 19.05~46 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7eb5a0877bc4023bcce9ba553953dc4ffd746e02;p=ejabberd Sqlite doesn't recognize concat() so use || on it instead --- diff --git a/src/mod_mam_sql.erl b/src/mod_mam_sql.erl index 456035659..5379a055a 100644 --- a/src/mod_mam_sql.erl +++ b/src/mod_mam_sql.erl @@ -425,10 +425,16 @@ make_sql_query(User, LServer, MAMQuery, RSM, ExtraUsernames) -> [<<" username in (">>, str:join(EscUsers, <<",">>), <<")">>]}; subscribers_table -> SJid = Escape(jid:encode({User, LServer, <<>>})), + RoomName = case ODBCType of + sqlite -> + <<"room || '@' || host">>; + _ -> + <<"concat(room, '@', host)">> + end, {<<" username,">>, [<<" (username = '">>, SUser, <<"'">>, - <<" or username in (select concat(room, '@', host) ", - "from muc_room_subscribers where jid='">>, SJid, <<"'">>, HostMatch, <<"))">>]}; + <<" or username in (select ">>, RoomName, + <<" from muc_room_subscribers where jid='">>, SJid, <<"'">>, HostMatch, <<"))">>]}; _ -> {<<>>, [<<" username='">>, SUser, <<"'">>]} end,