diff --git a/src/libcalamares/network/Manager.cpp b/src/libcalamares/network/Manager.cpp index 5125f592e..cceff477e 100644 --- a/src/libcalamares/network/Manager.cpp +++ b/src/libcalamares/network/Manager.cpp @@ -222,7 +222,7 @@ Manager::setCheckHasInternetUrl( const QVector< QUrl >& urls ) d->m_hasInternetUrls.begin(), d->m_hasInternetUrls.end(), []( const QUrl& u ) { return !u.isValid(); } ); if ( it != d->m_hasInternetUrls.end() ) { - d->m_hasInternetUrls.erase( it ); + d->m_hasInternetUrls.erase( it, d->m_hasInternetUrls.end() ); } } diff --git a/src/libcalamares/network/Tests.cpp b/src/libcalamares/network/Tests.cpp index a5bc52497..e5bd34c23 100644 --- a/src/libcalamares/network/Tests.cpp +++ b/src/libcalamares/network/Tests.cpp @@ -134,4 +134,14 @@ NetworkTests::testCheckMultiUrl() QVERIFY( nam.checkHasInternet() ); QCOMPARE( nam.getCheckInternetUrls().count(), 2 ); } + { + QUrl u0( "http://nonexistent.example.com" ); + QUrl u1; + QVERIFY( u0.isValid() ); + QVERIFY( !u1.isValid() ); + nam.setCheckHasInternetUrl( { u1, u1, u1, u1 } ); + QCOMPARE( nam.getCheckInternetUrls().count(), 0 ); + nam.setCheckHasInternetUrl( { u1, u1, u0, u1 } ); + QCOMPARE( nam.getCheckInternetUrls().count(), 1 ); + } }