diff --git a/client/core/controllers/coreSignalHandlers.cpp b/client/core/controllers/coreSignalHandlers.cpp index 7f17eeb5f..daf5b8df4 100644 --- a/client/core/controllers/coreSignalHandlers.cpp +++ b/client/core/controllers/coreSignalHandlers.cpp @@ -1,6 +1,7 @@ #include "coreSignalHandlers.h" #include +#include #include "core/utils/selfhosted/sshSession.h" #include "core/utils/errorCodes.h" @@ -144,7 +145,9 @@ void CoreSignalHandlers::initExportControllerHandler() }); connect(m_coreController->m_exportController, &ExportController::revokeClientRequested, this, [this](const QString &serverId, int row, DockerContainer container) { - m_coreController->m_usersController->revokeClient(serverId, row, container); + QtConcurrent::run([this, serverId, row, container]() { + m_coreController->m_usersController->revokeClient(serverId, row, container); + }); }); connect(m_coreController->m_exportController, &ExportController::renameClientRequested, this, [this](const QString &serverId, int row, const QString &clientName, DockerContainer container) { @@ -202,7 +205,9 @@ void CoreSignalHandlers::initAdminConfigRevokedHandler() { connect(m_coreController->m_installController, &InstallController::clientRevocationRequested, this, [this](const QString &serverId, const ContainerConfig &containerConfig, DockerContainer container) { - m_coreController->m_usersController->revokeClient(serverId, containerConfig, container); + QtConcurrent::run([this, serverId, containerConfig, container]() { + m_coreController->m_usersController->revokeClient(serverId, containerConfig, container); + }); }); connect(m_coreController->m_installController, &InstallController::clientAppendRequested, this, diff --git a/client/core/controllers/selfhosted/usersController.cpp b/client/core/controllers/selfhosted/usersController.cpp index 1e37d437b..6ebfaa770 100644 --- a/client/core/controllers/selfhosted/usersController.cpp +++ b/client/core/controllers/selfhosted/usersController.cpp @@ -698,12 +698,12 @@ ErrorCode UsersController::revokeXray(const int row, QString restartScript = QString("sudo docker restart $CONTAINER_NAME"); error = sshSession->runScript( - credentials, + credentials, sshSession->replaceVars(restartScript, amnezia::genBaseVars(credentials, container, QString(), QString())) ); if (error != ErrorCode::NoError) { logger.error() << "Failed to restart xray container"; - return error; + return ErrorCode::NoError; } return error;