diff options
author | Kim Alvefur <zash@zash.se> | 2022-01-15 16:25:25 +0100 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2022-01-15 16:25:25 +0100 |
commit | cced954ac3e55bff2dabb86c555044eb007e44d4 (patch) | |
tree | 25ff592845b6021179d182bbbc8db134a08426f6 /util/jid.lua | |
parent | 91055b49bba7b0be8f2b25b96b0ae9ce2a4337ff (diff) | |
download | prosody-cced954ac3e55bff2dabb86c555044eb007e44d4.tar.gz prosody-cced954ac3e55bff2dabb86c555044eb007e44d4.zip |
util.jid: Explicitly check for nil rather than falsy
A boolean false should blow up.
Diffstat (limited to 'util/jid.lua')
-rw-r--r-- | util/jid.lua | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/util/jid.lua b/util/jid.lua index a1180534..694a6b1f 100644 --- a/util/jid.lua +++ b/util/jid.lua @@ -32,18 +32,18 @@ local _ENV = nil; -- luacheck: std none local function split(jid) - if not jid then return; end + if jid == nil then return; end local node, nodepos = match(jid, "^([^@/]+)@()"); local host, hostpos = match(jid, "^([^@/]+)()", nodepos); - if node and not host then return nil, nil, nil; end + if node ~= nil and host == nil then return nil, nil, nil; end local resource = match(jid, "^/(.+)$", hostpos); - if (not host) or ((not resource) and #jid >= hostpos) then return nil, nil, nil; end + if (host == nil) or ((resource == nil) and #jid >= hostpos) then return nil, nil, nil; end return node, host, resource; end local function bare(jid) local node, host = split(jid); - if node and host then + if node ~= nil and host ~= nil then return node.."@"..host; end return host; @@ -51,31 +51,31 @@ end local function prepped_split(jid, strict) local node, host, resource = split(jid); - if host and host ~= "." then + if host ~= nil and host ~= "." then if sub(host, -1, -1) == "." then -- Strip empty root label host = sub(host, 1, -2); end host = nameprep(host, strict); - if not host then return; end - if node then + if host == nil then return; end + if node ~= nil then node = nodeprep(node, strict); - if not node then return; end + if node == nil then return; end end - if resource then + if resource ~= nil then resource = resourceprep(resource, strict); - if not resource then return; end + if resource == nil then return; end end return node, host, resource; end end local function join(node, host, resource) - if not host then return end - if node and resource then + if host == nil then return end + if node ~= nil and resource ~= nil then return node.."@"..host.."/"..resource; - elseif node then + elseif node ~= nil then return node.."@"..host; - elseif resource then + elseif resource ~= nil then return host.."/"..resource; end return host; |