# HG changeset patch
# User Kim Alvefur <zash@zash.se>
# Date 1587591385 -7200
# Node ID ff087f2d4cb600935d7c61a2bfb66a294e2892da
# Parent  abbdf72b0710abc17c07d3c90c9e8bb9d1cb365b
mod_lastactivity: Encode seconds as decimal, not float

In Lua 5.3 difftime() takes integers as argument but returns a float,
and then tostring() serializes it with a decimal point. This violates
XEP-0012.

Like #1536

diff -r abbdf72b0710 -r ff087f2d4cb6 plugins/mod_lastactivity.lua
--- a/plugins/mod_lastactivity.lua	Wed Apr 22 21:46:56 2020 +0200
+++ b/plugins/mod_lastactivity.lua	Wed Apr 22 23:36:25 2020 +0200
@@ -30,7 +30,7 @@
 	if not stanza.attr.to or is_contact_subscribed(username, module.host, jid_bare(stanza.attr.from)) then
 		local seconds, text = "0", "";
 		if map[username] then
-			seconds = tostring(os.difftime(os.time(), map[username].t));
+			seconds = string.format("%d", os.difftime(os.time(), map[username].t));
 			text = map[username].s;
 		end
 		origin.send(st.reply(stanza):tag('query', {xmlns='jabber:iq:last', seconds=seconds}):text(text));