From cf259313f239df31f6fd7468684d612e9753c4f0 Mon Sep 17 00:00:00 2001 From: Nikhil Tanwar <2002nikhiltanwar@gmail.com> Date: Sun, 5 Dec 2021 17:21:53 +0530 Subject: [PATCH] Do not allow 0 as port value Use default port if there is no value --- src/localkiwixserver.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/localkiwixserver.cpp b/src/localkiwixserver.cpp index 83484dd..5d5b1e7 100644 --- a/src/localkiwixserver.cpp +++ b/src/localkiwixserver.cpp @@ -27,7 +27,7 @@ LocalKiwixServer::LocalKiwixServer(QWidget *parent) : connect(ui->OpenInBrowserButton, SIGNAL(clicked()), this, SLOT(openInBrowser())); connect(ui->closeButton, &QPushButton::clicked, this, &LocalKiwixServer::close); connect(ui->PortChooser, &QLineEdit::textChanged, ui->PortChooser, [=](const QString &text){ - if(text.toInt() > 65535) { + if(text.toInt() > 65535 || text.toInt() < 1) { QString validText = text; validText.chop(1); ui->PortChooser->setText(validText); @@ -48,7 +48,7 @@ LocalKiwixServer::LocalKiwixServer(QWidget *parent) : } ui->IpChooser->setCurrentText(KiwixApp::instance()->getSettingsManager()->getKiwixServerIp()); ui->PortChooser->setText(QString::number(m_port)); - ui->PortChooser->setValidator(new QIntValidator(0, 65535, this)); + ui->PortChooser->setValidator(new QIntValidator(1, 65535, this)); ui->KiwixServerButton->setStyleSheet("QPushButton {background-color: RoyalBlue;" "color: white;" "padding: 5px;" @@ -78,10 +78,13 @@ void LocalKiwixServer::openInBrowser() void LocalKiwixServer::runOrStopServer() { if (!m_active) { + auto settingsManager = KiwixApp::instance()->getSettingsManager(); m_port = ui->PortChooser->text().toInt(); + if (m_port == 0) { + m_port = settingsManager->getKiwixServerPort(); + } mp_server->setPort(m_port); m_ipAddress = ui->IpChooser->currentText(); - auto settingsManager = KiwixApp::instance()->getSettingsManager(); settingsManager->setKiwixServerPort(m_port); settingsManager->setKiwixServerIpAddress(m_ipAddress); m_ipAddress = (m_ipAddress != "0.0.0.0") ? ui->IpChooser->currentText() : QString::fromStdString(kiwix::getBestPublicIp());