muc.lib: Fix pattern so that it doesn't match hashes containing null bytes, causing...
authorMatthew Wild <mwild1@gmail.com>
Tue, 17 Nov 2015 17:01:25 +0000 (17:01 +0000)
committerMatthew Wild <mwild1@gmail.com>
Tue, 17 Nov 2015 17:01:25 +0000 (17:01 +0000)
plugins/muc/muc.lib.lua

index 8028f5aee0e5cc9dc352930a27797cc3b2f6e246..d42fb2eb4345d79a156984afbe9fa803e60ebb6d 100644 (file)
@@ -361,7 +361,7 @@ local function construct_stanza_id(room, stanza)
 end
 local function deconstruct_stanza_id(room, stanza)
        local from_jid_possiblybare, to_nick = stanza.attr.from, stanza.attr.to;
-       local from_jid, id, to_jid_hash = (base64.decode(stanza.attr.id) or ""):match("^(.+)%z(.*)%z(.+)$");
+       local from_jid, id, to_jid_hash = (base64.decode(stanza.attr.id) or ""):match("^(%Z+)%z(%Z*)%z(.+)$");
        local from_nick = room._jid_nick[from_jid];
 
        if not(from_nick) then return; end