X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fcorenetwork.cpp;h=314f3d291ed6db77a86b84574d3b2605668a164d;hp=a40b54641f75770e62fb06a67a52efe2a2991543;hb=c5d6b6156d0d360940c45db3ae88bce808dce1ee;hpb=b795a7b7b42ab546b1a6db2cba6091f5c3aa91fc diff --git a/src/core/corenetwork.cpp b/src/core/corenetwork.cpp index a40b5464..314f3d29 100644 --- a/src/core/corenetwork.cpp +++ b/src/core/corenetwork.cpp @@ -181,6 +181,16 @@ void CoreNetwork::disconnectFromIrc(bool requested, const QString &reason) { _quitRequested = requested; // see socketDisconnected(); _autoReconnectTimer.stop(); _autoReconnectCount = 0; // prohibiting auto reconnect + + IrcUser *me_ = me(); + if(me_) { + QString awayMsg; + if(me_->isAway()) + awayMsg = me_->awayMessage(); + Core::setAwayMessage(userId(), networkId(), awayMsg); + Core::setUserModes(userId(), networkId(), me_->userModes()); + } + displayMsg(Message::Server, BufferInfo::StatusBuffer, "", tr("Disconnecting.")); if(socket.state() == QAbstractSocket::UnconnectedState) { socketDisconnected();