Merge 0.10->trunk
[prosody.git] / plugins / mod_net_multiplex.lua
index d666b907841b50e843eb28814769005e3f0424ba..0dd3dc67709dc308e0281c1a29bd9cad5d9ccdeb 100644 (file)
@@ -34,7 +34,6 @@ end
 function listener.onincoming(conn, data)
        if not data then return; end
        local buf = buffers[conn];
-       buffers[conn] = nil;
        buf = buf and buf..data or data;
        for service, multiplex_pattern in pairs(available_services) do
                if buf:match(multiplex_pattern) then
@@ -57,6 +56,8 @@ function listener.ondisconnect(conn, err)
        buffers[conn] = nil; -- warn if no buffer?
 end
 
+listener.ondetach = listener.ondisconnect;
+
 module:provides("net", {
        name = "multiplex";
        config_prefix = "";