Auto-Anmeldung: doppelten Login-Request beim App-Start verhindert (Race durch IndexedStack)
Betraf alle drei Nutzer (Dustin, Baka, Tinker), nicht nur einen: IndexedStack baut Download-Tab und YT-Suche beim App-Start gleichzeitig, beide loesen unabhaengig voneinander autoAnmelden() aus. Ohne In-Flight-Absicherung gingen zwei fast-gleichzeitige Login-Requests an denselben Server, von denen einer abgelehnt wurde - obwohl die Zugangsdaten korrekt waren. - BakaAuth.autoAnmelden() haengt einen ueberlappenden Aufruf jetzt an den bereits laufenden Login-Versuch an, statt einen zweiten Request zu senden. - Anmelde-Dialog im Download-Tab zeigt den tatsaechlich bekannten Navidrome-Benutzernamen statt immer "Baka" vorauszufuellen. - Navidrome-Dialog in den Einstellungen waehlt den zuletzt bekannten Benutzer vor statt immer "Baka".
This commit is contained in:
@@ -346,7 +346,12 @@ class _SettingsScreenState extends State<SettingsScreen> {
|
||||
void _zeigeNavidromeDialog() {
|
||||
final urlCtrl = TextEditingController(text: 'https://musik.baka-net.de');
|
||||
final passCtrl = TextEditingController();
|
||||
String selectedUser = 'Baka';
|
||||
// Vorauswahl: der zuletzt bekannte Navidrome-Benutzer, falls er einer
|
||||
// der drei Server-User ist — sonst Fallback "Baka".
|
||||
const bekannteBenutzer = ['Baka', 'Tinker', 'Dustin'];
|
||||
String selectedUser = bekannteBenutzer.contains(_navidrome.benutzer)
|
||||
? _navidrome.benutzer
|
||||
: 'Baka';
|
||||
bool verbindet = false;
|
||||
bool obscure = true;
|
||||
String? fehler;
|
||||
|
||||
Reference in New Issue
Block a user