Comparison

plugins/mod_admin_telnet.lua @ 5278:f79be67e5666

mod_admin_telnet: Stop processing lines when session is closed
author Kim Alvefur <zash@zash.se>
date Fri, 28 Dec 2012 14:32:22 +0100
parent 5270:20e14961f630
child 5520:75230be5be58
comparison
equal deleted inserted replaced
5277:8585f3cc4976 5278:f79be67e5666
147 if partial then 147 if partial then
148 data = partial..data; 148 data = partial..data;
149 end 149 end
150 150
151 for line in data:gmatch("[^\n]*[\n\004]") do 151 for line in data:gmatch("[^\n]*[\n\004]") do
152 if session.closed then return end
152 console:process_line(session, line); 153 console:process_line(session, line);
153 session.send(string.char(0)); 154 session.send(string.char(0));
154 end 155 end
155 session.partial_data = data:match("[^\n]+$"); 156 session.partial_data = data:match("[^\n]+$");
156 end 157 end
166 -- Console commands -- 167 -- Console commands --
167 -- These are simple commands, not valid standalone in Lua 168 -- These are simple commands, not valid standalone in Lua
168 169
169 function commands.bye(session) 170 function commands.bye(session)
170 session.print("See you! :)"); 171 session.print("See you! :)");
172 session.closed = true;
171 session.disconnect(); 173 session.disconnect();
172 end 174 end
173 commands.quit, commands.exit = commands.bye, commands.bye; 175 commands.quit, commands.exit = commands.bye, commands.bye;
174 176
175 commands["!"] = function (session, data) 177 commands["!"] = function (session, data)