Diff

plugins/mod_private.lua @ 6843:161cccfdf015

Merge 0.10->trunk
author Kim Alvefur <zash@zash.se>
date Tue, 22 Sep 2015 01:31:52 +0200
parent 6354:bbb4a82db32e
parent 6841:be87ab2d611c
child 9228:e2e2aa76ea31
line wrap: on
line diff
--- a/plugins/mod_private.lua	Sat Sep 19 17:51:20 2015 +0200
+++ b/plugins/mod_private.lua	Tue Sep 22 01:31:52 2015 +0200
@@ -17,19 +17,21 @@
 	local origin, stanza = event.origin, event.stanza;
 	local query = stanza.tags[1];
 	if #query.tags ~= 1 then
-		return origin.send(st.error_reply(stanza, "modify", "bad-format"));
+		origin.send(st.error_reply(stanza, "modify", "bad-format"));
+		return true;
 	end
 	local tag = query.tags[1];
 	local key = tag.name..":"..tag.attr.xmlns;
 	if stanza.attr.type == "get" then
 		local data, err = private_storage:get(origin.username, key);
 		if data then
-			return origin.send(st.reply(stanza):query("jabber:iq:private"):add_child(st.deserialize(data)));
+			origin.send(st.reply(stanza):query("jabber:iq:private"):add_child(st.deserialize(data)));
 		elseif err then
-			return origin.send(st.error_reply(stanza, "wait", "internal-server-error", err));
+			origin.send(st.error_reply(stanza, "wait", "internal-server-error", err));
 		else
-			return origin.send(st.reply(stanza):add_child(query));
+			origin.send(st.reply(stanza):add_child(query));
 		end
+		return true;
 	else -- type == set
 		local data;
 		if #tag ~= 0 then
@@ -38,8 +40,10 @@
 		-- TODO delete datastore if empty
 		local ok, err = private_storage:set(origin.username, key, data);
 		if not ok then
-			return origin.send(st.error_reply(stanza, "wait", "internal-server-error", err));
+			origin.send(st.error_reply(stanza, "wait", "internal-server-error", err));
+			return true;
 		end
-		return origin.send(st.reply(stanza));
+		origin.send(st.reply(stanza));
+		return true;
 	end
 end);