fix: 校验 serverlist 有效性

This commit is contained in:
uniartisan 2022-12-27 10:54:30 +08:00
parent 30b65350ca
commit e344b16aa0
4 changed files with 51 additions and 34 deletions

View File

@ -9,6 +9,7 @@
#define TMP_PATH "/tmp/spark-store" #define TMP_PATH "/tmp/spark-store"
#define DEFAULT_SERVER_URL "https://cdn.d.store.deepinos.org.cn/" #define DEFAULT_SERVER_URL "https://cdn.d.store.deepinos.org.cn/"
#define DEFAULT_CHECK_DOMAIN "deepinos"
bool SettingsPage::isdownload = false; bool SettingsPage::isdownload = false;
@ -55,7 +56,11 @@ void SettingsPage::readServerList()
// 创建 QTextStream 对象 // 创建 QTextStream 对象
QTextStream textStream(&file); QTextStream textStream(&file);
if (!textStream.readAll().contains(DEFAULT_CHECK_DOMAIN)) // 校验配置文件有效性
{
return;
}
textStream.seek(0); // 回到开头
QString lineData = textStream.readLine(); // 读取文件的第一行 QString lineData = textStream.readLine(); // 读取文件的第一行
ui->comboBox_server->addItem(lineData); ui->comboBox_server->addItem(lineData);
while (!lineData.isNull()) while (!lineData.isNull())
@ -106,11 +111,23 @@ void SettingsPage::on_pushButton_updateServer_clicked()
QtConcurrent::run([=]() QtConcurrent::run([=]()
{ {
ui->pushButton_updateServer->setEnabled(false); ui->pushButton_updateServer->setEnabled(false);
ui->comboBox_server->clear();
QFile::remove(QStandardPaths::writableLocation(QStandardPaths::AppConfigLocation) + "/server.list"); QFile::remove(QStandardPaths::writableLocation(QStandardPaths::AppConfigLocation) + "/server.list");
system("curl -o " + QStandardPaths::writableLocation(QStandardPaths::AppConfigLocation).toUtf8() + "/server.list https://d.store.deepinos.org.cn/store/server-and-mirror.list"); auto updateSuccess = system("curl -o " + QStandardPaths::writableLocation(QStandardPaths::AppConfigLocation).toUtf8() + "/server.list https://d.store.deepinos.org.cn/store/server-and-mirror.list");
qDebug() << "Update serverlist status:" << updateSuccess;
if (updateSuccess != 0) // 更新失败不换服务器配置
{
QFile file(QStandardPaths::writableLocation(QStandardPaths::AppConfigLocation) + "/server.list");
if (file.exists())
{
file.remove();
}
// FIXME: 向用户提示更新失败
ui->pushButton_updateServer->setEnabled(true);
return;
}
ui->comboBox_server->clear();
ui->pushButton_updateServer->setEnabled(true); ui->pushButton_updateServer->setEnabled(true);
readServerList(); readServerList();
ui->comboBox_server->setCurrentIndex(0); }); ui->comboBox_server->setCurrentIndex(0); });

View File

@ -441,32 +441,32 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="44"/> <location filename="../src/mainwindow-dtk.cpp" line="45"/>
<source>Submit App</source> <source>Submit App</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="45"/> <location filename="../src/mainwindow-dtk.cpp" line="46"/>
<source>Submit App with client(Recommanded)</source> <source>Submit App with client(Recommanded)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="46"/> <location filename="../src/mainwindow-dtk.cpp" line="47"/>
<source>Settings</source> <source>Settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="47"/> <location filename="../src/mainwindow-dtk.cpp" line="48"/>
<source>APP Upgrade and Install Settings</source> <source>APP Upgrade and Install Settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="160"/> <location filename="../src/mainwindow-dtk.cpp" line="161"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="161"/> <location filename="../src/mainwindow-dtk.cpp" line="162"/>
<source>Search or enter spk://</source> <source>Search or enter spk://</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -476,7 +476,7 @@
<message> <message>
<location filename="../src/application.cpp" line="26"/> <location filename="../src/application.cpp" line="26"/>
<location filename="../src/application.cpp" line="27"/> <location filename="../src/application.cpp" line="27"/>
<location filename="../src/mainwindow-dtk.cpp" line="21"/> <location filename="../src/mainwindow-dtk.cpp" line="22"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -584,17 +584,17 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="196"/> <location filename="../src/pages/settingspage.cpp" line="213"/>
<source>Updating, please wait...</source> <source>Updating, please wait...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="218"/> <location filename="../src/pages/settingspage.cpp" line="235"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="218"/> <location filename="../src/pages/settingspage.cpp" line="235"/>
<source>Temporary cache was cleaned</source> <source>Temporary cache was cleaned</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>

View File

@ -441,32 +441,32 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="44"/> <location filename="../src/mainwindow-dtk.cpp" line="45"/>
<source>Submit App</source> <source>Submit App</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="45"/> <location filename="../src/mainwindow-dtk.cpp" line="46"/>
<source>Submit App with client(Recommanded)</source> <source>Submit App with client(Recommanded)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="46"/> <location filename="../src/mainwindow-dtk.cpp" line="47"/>
<source>Settings</source> <source>Settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="47"/> <location filename="../src/mainwindow-dtk.cpp" line="48"/>
<source>APP Upgrade and Install Settings</source> <source>APP Upgrade and Install Settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="160"/> <location filename="../src/mainwindow-dtk.cpp" line="161"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="161"/> <location filename="../src/mainwindow-dtk.cpp" line="162"/>
<source>Search or enter spk://</source> <source>Search or enter spk://</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -476,7 +476,7 @@
<message> <message>
<location filename="../src/application.cpp" line="26"/> <location filename="../src/application.cpp" line="26"/>
<location filename="../src/application.cpp" line="27"/> <location filename="../src/application.cpp" line="27"/>
<location filename="../src/mainwindow-dtk.cpp" line="21"/> <location filename="../src/mainwindow-dtk.cpp" line="22"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -584,17 +584,17 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="196"/> <location filename="../src/pages/settingspage.cpp" line="213"/>
<source>Updating, please wait...</source> <source>Updating, please wait...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="218"/> <location filename="../src/pages/settingspage.cpp" line="235"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="218"/> <location filename="../src/pages/settingspage.cpp" line="235"/>
<source>Temporary cache was cleaned</source> <source>Temporary cache was cleaned</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>

View File

@ -441,32 +441,32 @@
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="44"/> <location filename="../src/mainwindow-dtk.cpp" line="45"/>
<source>Submit App</source> <source>Submit App</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="45"/> <location filename="../src/mainwindow-dtk.cpp" line="46"/>
<source>Submit App with client(Recommanded)</source> <source>Submit App with client(Recommanded)</source>
<translation>使稿</translation> <translation>使稿</translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="46"/> <location filename="../src/mainwindow-dtk.cpp" line="47"/>
<source>Settings</source> <source>Settings</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="47"/> <location filename="../src/mainwindow-dtk.cpp" line="48"/>
<source>APP Upgrade and Install Settings</source> <source>APP Upgrade and Install Settings</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="160"/> <location filename="../src/mainwindow-dtk.cpp" line="161"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="161"/> <location filename="../src/mainwindow-dtk.cpp" line="162"/>
<source>Search or enter spk://</source> <source>Search or enter spk://</source>
<translation></translation> <translation></translation>
</message> </message>
@ -476,7 +476,7 @@
<message> <message>
<location filename="../src/application.cpp" line="26"/> <location filename="../src/application.cpp" line="26"/>
<location filename="../src/application.cpp" line="27"/> <location filename="../src/application.cpp" line="27"/>
<location filename="../src/mainwindow-dtk.cpp" line="21"/> <location filename="../src/mainwindow-dtk.cpp" line="22"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation></translation> <translation></translation>
</message> </message>
@ -584,17 +584,17 @@
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-weight:600;&quot;&gt;&lt;/span&gt;Linux/deepinSpark&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;使使&lt;/p&gt;&lt;p&gt; &amp;lt;jifengshenmo@outlook.com&amp;gt; &lt;/p&gt;&lt;p&gt;稿&lt;/p&gt;&lt;p&gt; Spark IM :&lt;a href=&quot;https://chat.shenmo.tech&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#0000ff;&quot;&gt;https://chat.shenmo.tech&lt;br/&gt;&lt;/span&gt;&lt;/a&gt;QQ 872690351&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation> <translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-weight:600;&quot;&gt;&lt;/span&gt;Linux/deepinSpark&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;使使&lt;/p&gt;&lt;p&gt; &amp;lt;jifengshenmo@outlook.com&amp;gt; &lt;/p&gt;&lt;p&gt;稿&lt;/p&gt;&lt;p&gt; Spark IM :&lt;a href=&quot;https://chat.shenmo.tech&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#0000ff;&quot;&gt;https://chat.shenmo.tech&lt;br/&gt;&lt;/span&gt;&lt;/a&gt;QQ 872690351&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="196"/> <location filename="../src/pages/settingspage.cpp" line="213"/>
<source>Updating, please wait...</source> <source>Updating, please wait...</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="218"/> <location filename="../src/pages/settingspage.cpp" line="235"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="218"/> <location filename="../src/pages/settingspage.cpp" line="235"/>
<source>Temporary cache was cleaned</source> <source>Temporary cache was cleaned</source>
<translation></translation> <translation></translation>
</message> </message>