fixed the bug

This commit is contained in:
anselme 2015-05-26 20:06:24 +02:00
parent f82b053b67
commit 30e4e979c0
4 changed files with 21 additions and 21 deletions

View File

@ -20,22 +20,23 @@ int main(int argc, char *argv[])
else if(str.contains('=')) else if(str.contains('='))
{ {
QStringList argList = str.split('='); QStringList argList = str.split('=');
QString key = argList.at(0); if(argList.size() == 2)
if(key.compare("server")) {
server = argList.at(1); QString key = argList.at(0);
else if(key.compare("port")) if(key.compare("server") == 0)
port = argList.at(1).toInt(); server = argList.at(1);
else if(key.compare("nick")) else if(key.compare("port") == 0)
nick = argList.at(1); port = argList.at(1).toInt();
else if(key.compare("chan")) else if(key.compare("nick") == 0)
chan = argList.at(1); nick = argList.at(1);
else if(key.compare("chan") == 0)
chan = argList.at(1);
}
} }
} }
// create the socket // create the socket
SocketIRC sock; SocketIRC sock(server, port);
sock.setServer(server);
sock.setPort(port);
// create the bot // create the bot
SparrowBot* bot = new SparrowBot(nick, chan); SparrowBot* bot = new SparrowBot(nick, chan);

View File

@ -7,14 +7,10 @@ SocketIRC::SocketIRC() : server("irc.freenode.net"), port(6667), isConnected(fal
connect(&sock, SIGNAL(disconnected()), this, SLOT(onDisconnect())); connect(&sock, SIGNAL(disconnected()), this, SLOT(onDisconnect()));
} }
void SocketIRC::setServer(QString server_) SocketIRC::SocketIRC(QString server_, int port_) : server(server_), port(port_), isConnected(false)
{ {
server = server_; connect(&sock, SIGNAL(readyRead()), this, SLOT(readMsg()));
} connect(&sock, SIGNAL(disconnected()), this, SLOT(onDisconnect()));
void SocketIRC::setPort(int port_)
{
port = port_;
} }
void SocketIRC::sendMsg(QString msg) void SocketIRC::sendMsg(QString msg)
@ -31,7 +27,10 @@ void SocketIRC::connectToServer(QCoreApplication* app_)
sock.connectToHost(server, quint16(port)); sock.connectToHost(server, quint16(port));
if(!sock.waitForConnected(3000)) if(!sock.waitForConnected(3000))
{ {
std::cerr << "failed to connect : " << sock.errorString().toStdString() << std::endl; std::cerr << "failed to connect to " << server.toStdString()
<< " on port " << port
<< ": " << sock.errorString().toStdString() << std::endl;
if(app != NULL) if(app != NULL)
app->exit(); app->exit();
else else

View File

@ -13,6 +13,7 @@ class SocketIRC : public QObject
public: public:
SocketIRC(); SocketIRC();
SocketIRC(QString server_, int port_);
void setServer(QString server_); void setServer(QString server_);
void setPort(int port_); void setPort(int port_);
void connectToServer(QCoreApplication* app_); void connectToServer(QCoreApplication* app_);

View File

@ -132,7 +132,6 @@ void SparrowBot::disconnect()
void SparrowBot::disconnect(QString str) void SparrowBot::disconnect(QString str)
{ {
emit sendMsg(QString("QUIT :%1").arg(str)); emit sendMsg(QString("QUIT :%1").arg(str));
} }
void SparrowBot::joinGame() void SparrowBot::joinGame()