aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mod_offline.erl5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/mod_offline.erl b/src/mod_offline.erl
index 2906b2717..ae4840c9d 100644
--- a/src/mod_offline.erl
+++ b/src/mod_offline.erl
@@ -793,8 +793,9 @@ read_mam_messages(LUser, LServer, ReadMsgs) ->
ExtraMsgs;
_ ->
MaxOfflineMsgs = case get_max_user_messages(LUser, LServer) of
- Number when is_integer(Number) -> Number;
- _ -> 100
+ Number when is_integer(Number) -> Number - length(ExtraMsgs);
+ infinity -> undefined;
+ _ -> 100 - length(ExtraMsgs)
end,
JID = jid:make(LUser, LServer, <<>>),
{MamMsgs, _, _} = mod_mam:select(LServer, JID, JID,