mirror of
https://github.com/Snigdha-OS/snigdhaos-blackbox.git
synced 2025-09-21 03:55:05 +02:00
🐞 fix(_network): fix internet connection detection
This commit is contained in:
@@ -31,7 +31,35 @@ SnigdhaOSBlackBox::~SnigdhaOSBlackBox()
|
|||||||
}
|
}
|
||||||
|
|
||||||
void SnigdhaOSBlackBox::doInternetUpRequest(){
|
void SnigdhaOSBlackBox::doInternetUpRequest(){
|
||||||
|
QNetworkAccessManager* network_manager = new QNetworkAccessManager();
|
||||||
|
aut network_reply = network_manager->head(QNetworkRequest(QString(INTERNET_CHECK_URL)));
|
||||||
|
|
||||||
|
QTimer* timer = new QTimer(this);
|
||||||
|
timer->setSingleShot(true);
|
||||||
|
timer->start(5000);
|
||||||
|
|
||||||
|
//Try again fuction!
|
||||||
|
connect(timer, &QTimer::timeout, this, [this, timer, network_reply, network_manager]() {
|
||||||
|
timer->deleteLater();
|
||||||
|
network_reply->abort();
|
||||||
|
network_reply->deleteLater();
|
||||||
|
network_manager->deleteLater();
|
||||||
|
doInternetUpRequest();
|
||||||
|
});
|
||||||
|
|
||||||
|
connect(network_reply, &QNetworkReply::finished, this, [this, timer, network_reply, network_manager]() {
|
||||||
|
timer->stop();
|
||||||
|
timer->deleteLater();
|
||||||
|
network_reply->deleteLater();
|
||||||
|
network_manager->deleteLater();
|
||||||
|
|
||||||
|
if (network_reply->error() == network_reply->NoError) {
|
||||||
|
updateState(State::UPDATE);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
doInternetUpRequest();
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
void SnigdhaOSBlackBox::doUpdate(){
|
void SnigdhaOSBlackBox::doUpdate(){
|
||||||
|
Reference in New Issue
Block a user