diff options
author | Kim Alvefur <zash@zash.se> | 2024-11-17 13:40:20 +0100 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2024-11-17 13:40:20 +0100 |
commit | 885fde62be7244c5b2c978c97dcac0e80a1c9450 (patch) | |
tree | c68c111d3633acf0e091b90791ef1f03e1e56039 /util/stanza.lua | |
parent | 00584c4d610a381e4181ab438102420aa601f310 (diff) | |
download | prosody-885fde62be7244c5b2c978c97dcac0e80a1c9450.tar.gz prosody-885fde62be7244c5b2c978c97dcac0e80a1c9450.zip |
util.stanza: Handle Clark notation for attributes in :find()
Diffstat (limited to 'util/stanza.lua')
-rw-r--r-- | util/stanza.lua | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/util/stanza.lua b/util/stanza.lua index 325c494e..2f4e964a 100644 --- a/util/stanza.lua +++ b/util/stanza.lua @@ -277,6 +277,9 @@ function stanza_mt:find(path) local xmlns, name, text; local char = s_sub(path, pos, pos); if char == "@" then + if s_sub(path, pos + 1, pos + 1) == "{" then + return self.attr[s_gsub(s_sub(path, pos+2), "}", "\1", 1)]; + end local prefix, attr = s_match(path, "^([^:]+):(.*)", pos+1); if prefix and self.namespaces and self.namespaces[prefix] then return self.attr[self.namespaces[prefix] .. "\1" .. attr]; |