diff options
author | Holger Weiss <holger@zedat.fu-berlin.de> | 2018-07-27 00:27:10 +0200 |
---|---|---|
committer | Holger Weiss <holger@zedat.fu-berlin.de> | 2018-07-27 00:27:10 +0200 |
commit | 83e24628538cb29586686ee88a26d431885105eb (patch) | |
tree | 99af0e19bf1e7bb44016590218e41f6a5540be8f /src | |
parent | mod_mam: Make sure stanza IDs aren't reused (diff) |
mod_mam: Don't strip offline message stanza IDs
As mod_offline currently doesn't preserve metadata, add an explicit
check for messages retrieved from offline storage to avoid stripping
their stanza IDs.
Thanks to Zuglufttier for spotting this.
Diffstat (limited to 'src')
-rw-r--r-- | src/mod_mam.erl | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/mod_mam.erl b/src/mod_mam.erl index 7c5d3af61..2a43322c8 100644 --- a/src/mod_mam.erl +++ b/src/mod_mam.erl @@ -419,6 +419,8 @@ get_stanza_id(#message{meta = #{stanza_id := ID}}) -> -spec init_stanza_id(stanza(), binary()) -> stanza(). init_stanza_id(#message{meta = #{stanza_id := _ID}} = Pkt, _LServer) -> Pkt; +init_stanza_id(#message{meta = #{from_offline := true}} = Pkt, _LServer) -> + Pkt; init_stanza_id(Pkt, LServer) -> ID = p1_time_compat:system_time(micro_seconds), Pkt1 = strip_my_stanza_id(Pkt, LServer), |