Merge pull request #1673 from srcejon/fix_1647

Sat Tracker: Add query to TLE download filename, to avoid clashes.
pull/1675/head
Edouard Griffiths 2023-04-28 10:20:48 +02:00 zatwierdzone przez GitHub
commit d0b2a8f8e8
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 4AEE18F83AFDEB23
1 zmienionych plików z 12 dodań i 1 usunięć

Wyświetl plik

@ -847,8 +847,19 @@ QString SatelliteTracker::tleURLToFilename(const QString& string)
{
if (string == "https://db.satnogs.org/api/tle/")
return satNogsTLEFilename();
// Celestrak now uses the same filename with different queries, so we need to include the query
// in the file name, so the filenames don't clash. E.g:
// https://celestrak.org/NORAD/elements/gp.php?GROUP=gps-ops&FORMAT=tle
// https://celestrak.org/NORAD/elements/gp.php?GROUP=active&FORMAT=tle
QUrl url(string);
return HttpDownloadManager::downloadDir() + "/tle_" + url.fileName();
QString fileName = HttpDownloadManager::downloadDir() + "/tle_" + url.fileName();
if (url.hasQuery())
{
QString query = url.query().replace('%', '_').replace('&', '_').replace('=', '_');
fileName = fileName + query;
}
return fileName;
}
void SatelliteTracker::downloadFinished(const QString& filename, bool success)