diff --git a/rocketchat.cpp b/rocketchat.cpp index 58720120de354ad916fc09505fdefab10c0cc8c8..479d04483291f48bf8cb4a118da16caefd2b917f 100755 --- a/rocketchat.cpp +++ b/rocketchat.cpp @@ -250,19 +250,19 @@ bool RocketChat::newServerByDomain( const QString &domain ) auto firstServer = mServerMap.first(); mServerMap.remove( firstServer->getServerId() ); - - connect( firstServer, &RocketChatServerData::destroyed, [ &, this, domain]() { + auto self = this; + connect( firstServer, &RocketChatServerData::destroyed, [ &, self, domain]() { qDebug() << "test0"; qDebug() << "domain: " << domain; QString baseUrl = domain; QString apiUri = QStringLiteral( "https://" ) + domain + QStringLiteral( "/api/v1" ); qDebug() << "test1"; - this->channelModel.clear(); - this->groupsModel.clear(); - this->directmodel.clear(); - this->loginMethodsModel.reset(); + self->channelModel.clear(); + self->groupsModel.clear(); + self->directmodel.clear(); + self->loginMethodsModel.reset(); - RocketChatServerData *server = new RocketChatServerData( domain, baseUrl, apiUri, userModel, channelModel, groupsModel, directmodel, messagesModel, loginMethodsModel ); + RocketChatServerData *server = new RocketChatServerData( domain, baseUrl, apiUri, self->userModel, self->channelModel, self->groupsModel, self->directmodel, self->messagesModel, self->loginMethodsModel ); qDebug() << "test2"; qDebug() << "test3"; registerServer( server );