plugins/muc/muc.lib.lua
changeset 7415 f9744effae04
parent 7414 f385cd6127b2
child 7416 228396da1e27
--- a/plugins/muc/muc.lib.lua	Thu Apr 28 22:57:53 2016 +0200
+++ b/plugins/muc/muc.lib.lua	Thu Apr 28 23:34:19 2016 +0200
@@ -1322,6 +1322,11 @@
 				frozen[jid] = st.preserialize(presence);
 			end
 		end
+		local history = self._history;
+		if history then
+			frozen._last_message = st.preserialize(history[#history].stanza);
+			frozen._last_message_at = history[#history].timestamp;
+		end
 	end
 	return frozen;
 end
@@ -1337,6 +1342,13 @@
 	local room_jid = frozen._jid;
 	local room = _M.new_room(room_jid, frozen._data);
 
+	if frozen._last_message and frozen._last_message_at then
+		room._history = {
+			{ stanza = st.deserialize(frozen._last_message),
+			  timestamp = frozen._last_message_at, },
+		};
+	end
+
 	local occupants = {};
 	local occupant_sessions = {};
 	local room_name, room_host = jid_split(room_jid);