mirror of https://github.com/procxx/kepka.git
Read autoupdate prefix from config.
This commit is contained in:
parent
62c812858e
commit
ad1f089802
|
@ -712,8 +712,8 @@ sendMediaFileThumbSkip: 10px;
|
||||||
sendMediaFileNameTop: 7px;
|
sendMediaFileNameTop: 7px;
|
||||||
sendMediaFileStatusTop: 37px;
|
sendMediaFileStatusTop: 37px;
|
||||||
|
|
||||||
proxyUsePadding: margins(22px, 0px, 22px, 12px);
|
proxyUsePadding: margins(22px, 8px, 22px, 12px);
|
||||||
proxyTryIPv6Padding: margins(22px, 12px, 22px, 0px);
|
proxyTryIPv6Padding: margins(22px, 12px, 22px, 8px);
|
||||||
proxyRowPadding: margins(22px, 8px, 8px, 8px);
|
proxyRowPadding: margins(22px, 8px, 8px, 8px);
|
||||||
proxyRowIconSkip: 32px;
|
proxyRowIconSkip: 32px;
|
||||||
proxyRowSkip: 2px;
|
proxyRowSkip: 2px;
|
||||||
|
|
|
@ -31,7 +31,6 @@ namespace {
|
||||||
|
|
||||||
constexpr auto kCheckTimeout = TimeMs(10000);
|
constexpr auto kCheckTimeout = TimeMs(10000);
|
||||||
constexpr auto kMaxResponseSize = 1024 * 1024;
|
constexpr auto kMaxResponseSize = 1024 * 1024;
|
||||||
const auto kUpdateUrl = "http://updates.tdesktop.com";
|
|
||||||
|
|
||||||
#ifdef Q_OS_WIN
|
#ifdef Q_OS_WIN
|
||||||
using VersionInt = DWORD;
|
using VersionInt = DWORD;
|
||||||
|
@ -397,7 +396,7 @@ bool Updater::checkResponse(const QByteArray &response) {
|
||||||
startDownloadThread(
|
startDownloadThread(
|
||||||
bestAvailableVersion,
|
bestAvailableVersion,
|
||||||
bestIsAvailableBeta,
|
bestIsAvailableBeta,
|
||||||
kUpdateUrl + bestLink);
|
Local::readAutoupdatePrefix() + bestLink);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -515,7 +514,7 @@ void Updater::start(bool forceWait) {
|
||||||
if (sendRequest) {
|
if (sendRequest) {
|
||||||
clearSentRequest();
|
clearSentRequest();
|
||||||
|
|
||||||
auto url = QUrl(kUpdateUrl + QString("/current"));
|
auto url = QUrl(Local::readAutoupdatePrefix() + qstr("/current"));
|
||||||
DEBUG_LOG(("Update Info: requesting update state from '%1'"
|
DEBUG_LOG(("Update Info: requesting update state from '%1'"
|
||||||
).arg(url.toDisplayString()));
|
).arg(url.toDisplayString()));
|
||||||
const auto request = QNetworkRequest(url);
|
const auto request = QNetworkRequest(url);
|
||||||
|
|
|
@ -620,7 +620,7 @@ void Instance::Private::configLoadDone(const MTPConfig &result) {
|
||||||
_configLoader.reset();
|
_configLoader.reset();
|
||||||
_lastConfigLoadedTime = getms(true);
|
_lastConfigLoadedTime = getms(true);
|
||||||
|
|
||||||
auto &data = result.c_config();
|
const auto &data = result.c_config();
|
||||||
DEBUG_LOG(("MTP Info: got config, chat_size_max: %1, date: %2, test_mode: %3, this_dc: %4, dc_options.length: %5").arg(data.vchat_size_max.v).arg(data.vdate.v).arg(mtpIsTrue(data.vtest_mode)).arg(data.vthis_dc.v).arg(data.vdc_options.v.size()));
|
DEBUG_LOG(("MTP Info: got config, chat_size_max: %1, date: %2, test_mode: %3, this_dc: %4, dc_options.length: %5").arg(data.vchat_size_max.v).arg(data.vdate.v).arg(mtpIsTrue(data.vtest_mode)).arg(data.vthis_dc.v).arg(data.vdc_options.v.size()));
|
||||||
if (data.vdc_options.v.empty()) {
|
if (data.vdc_options.v.empty()) {
|
||||||
LOG(("MTP Error: config with empty dc_options received!"));
|
LOG(("MTP Error: config with empty dc_options received!"));
|
||||||
|
@ -659,8 +659,14 @@ void Instance::Private::configLoadDone(const MTPConfig &result) {
|
||||||
}
|
}
|
||||||
Global::SetBlockedMode(data.is_blocked_mode());
|
Global::SetBlockedMode(data.is_blocked_mode());
|
||||||
|
|
||||||
Lang::CurrentCloudManager().setSuggestedLanguage(data.has_suggested_lang_code() ? qs(data.vsuggested_lang_code) : QString());
|
const auto lang = data.has_suggested_lang_code()
|
||||||
|
? qs(data.vsuggested_lang_code)
|
||||||
|
: QString();
|
||||||
|
Lang::CurrentCloudManager().setSuggestedLanguage(lang);
|
||||||
|
|
||||||
|
if (data.has_autoupdate_url_prefix()) {
|
||||||
|
Local::writeAutoupdatePrefix(qs(data.vautoupdate_url_prefix));
|
||||||
|
}
|
||||||
Local::writeSettings();
|
Local::writeSettings();
|
||||||
|
|
||||||
_configExpiresAt = getms(true)
|
_configExpiresAt = getms(true)
|
||||||
|
|
|
@ -2517,6 +2517,54 @@ void writeMtpData() {
|
||||||
_writeMtpData();
|
_writeMtpData();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const QString &AutoupdatePrefix(const QString &replaceWith = {}) {
|
||||||
|
static auto value = QString();
|
||||||
|
if (!replaceWith.isEmpty()) {
|
||||||
|
value = replaceWith;
|
||||||
|
}
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
QString autoupdatePrefixFile() {
|
||||||
|
return cWorkingDir() + "tdata/prefix";
|
||||||
|
}
|
||||||
|
|
||||||
|
const QString &readAutoupdatePrefixRaw() {
|
||||||
|
const auto &result = AutoupdatePrefix();
|
||||||
|
if (!result.isEmpty()) {
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
QFile f(autoupdatePrefixFile());
|
||||||
|
if (f.open(QIODevice::ReadOnly)) {
|
||||||
|
const auto value = QString::fromUtf8(f.readAll());
|
||||||
|
if (!value.isEmpty()) {
|
||||||
|
return AutoupdatePrefix(value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return AutoupdatePrefix("http://updates.tdesktop.com");
|
||||||
|
}
|
||||||
|
|
||||||
|
void writeAutoupdatePrefix(const QString &prefix) {
|
||||||
|
const auto current = readAutoupdatePrefixRaw();
|
||||||
|
if (current != prefix) {
|
||||||
|
AutoupdatePrefix(prefix);
|
||||||
|
QFile f(autoupdatePrefixFile());
|
||||||
|
if (f.open(QIODevice::WriteOnly)) {
|
||||||
|
f.write(prefix.toUtf8());
|
||||||
|
f.close();
|
||||||
|
}
|
||||||
|
if (cAutoUpdate()) {
|
||||||
|
Core::UpdateChecker checker;
|
||||||
|
checker.start();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
QString readAutoupdatePrefix() {
|
||||||
|
auto result = readAutoupdatePrefixRaw();
|
||||||
|
return result.replace(QRegularExpression("/+$"), QString());
|
||||||
|
}
|
||||||
|
|
||||||
void reset() {
|
void reset() {
|
||||||
if (_localLoader) {
|
if (_localLoader) {
|
||||||
_localLoader->stop();
|
_localLoader->stop();
|
||||||
|
|
|
@ -27,6 +27,9 @@ void writeSettings();
|
||||||
void writeUserSettings();
|
void writeUserSettings();
|
||||||
void writeMtpData();
|
void writeMtpData();
|
||||||
|
|
||||||
|
void writeAutoupdatePrefix(const QString &prefix);
|
||||||
|
QString readAutoupdatePrefix();
|
||||||
|
|
||||||
void reset();
|
void reset();
|
||||||
|
|
||||||
bool checkPasscode(const QByteArray &passcode);
|
bool checkPasscode(const QByteArray &passcode);
|
||||||
|
|
Loading…
Reference in New Issue