From 58d1a65408ee32d590071c2ced7260b5592b5d3c Mon Sep 17 00:00:00 2001 From: Matthew Wild Date: Sat, 27 Sep 2008 19:17:40 +0100 Subject: Fixing jid.split() for all JIDs --- util/jid.lua | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'util/jid.lua') diff --git a/util/jid.lua b/util/jid.lua index 9d01e2af..b7116fdf 100644 --- a/util/jid.lua +++ b/util/jid.lua @@ -4,5 +4,8 @@ local match = string.match; module "jid" function split(jid) - return match(jid, "^([^@]+)@([^/]+)/?(.*)$"); + local node = match(jid, "^([^@]+)@"); + local server = (node and match(jid, ".-@([^@/]+)")) or match(jid, "^([^@/]+)"); + local resource = match(jid, "/(.+)$"); + return node, server, resource; end -- cgit v1.2.3