Fix crash on logout
[kdenetwork.git] / ksirc / ioLAG.cpp
blob9950485c8c34aab1857ee3ce7952ed9d784193af
1 /**********************************************************************
3 The IO LAG Controller
5 $$Id$$
7 **********************************************************************/
9 #include "ioLAG.h"
10 #include "control_message.h"
11 #include "ksircprocess.h"
13 #include <kdebug.h>
14 //Added by qt3to4:
15 #include <QTimerEvent>
16 #include <QByteArray>
18 #include <QAbstractEventDispatcher>
20 KSircIOLAG::KSircIOLAG(KSircProcess *_proc)
21 : QObject(),
22 KSircMessageReceiver(_proc)
24 proc = _proc;
25 setBroadcast(FALSE);
26 startTimer(30000);
27 // startTimer(5000);
28 //(proc->getWindowList())["!all"]->control_message(SET_LAG, "99");
32 KSircIOLAG::~KSircIOLAG()
34 QAbstractEventDispatcher::instance()->unregisterTimers(this);
37 void KSircIOLAG::sirc_receive(QByteArray str, bool)
40 if(str.contains("*L*")){
41 int s1, s2;
42 s1 = str.find("*L* ") + 4;
43 s2 = str.length();
44 if(s1 < 0 || s2 < 0){
45 kDebug(5008) << "Lag mesage broken: " << str << endl;
46 return;
48 QString lag = str.mid(s1, s2 - s1);
49 // cerr << "Lag: " << str << endl;
50 // cerr << "Setting lag to: " << lag << endl;
51 (proc->getWindowList())["!all"]->control_message(SET_LAG, lag);
56 void KSircIOLAG::control_message(int, QString)
60 void KSircIOLAG::timerEvent ( QTimerEvent * )
62 QByteArray cmd = "/lag\n";
63 emit outputLine(cmd);
66 #include "ioLAG.moc"