fix(android): a lock with no key locked the user out entirely

Removing the screen lock left no way forward: the cache is marked protected so it refuses to open, and the download that would have replaced it was blocked by the very gate I added to Sync yesterday. Neither door.

The gate now applies only when the device can actually authenticate. Demanding an authentication the phone can no longer produce protects nobody - the content comes from the server, and it is the sync password that guards it.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
r-zakarya
2026-08-15 19:34:05 +01:00
parent 49377b0990
commit 5ef4987272
+8 -1
View File
@@ -1041,7 +1041,14 @@ begin
// et l'affiche, ce qui revient exactement au meme resultat sans passer par // et l'affiche, ce qui revient exactement au meme resultat sans passer par
// l'authentification. La condition est la presence d'un cache protege sur // l'authentification. La condition est la presence d'un cache protege sur
// cet appareil - c'est lui qui exprime le choix de l'utilisateur. // cet appareil - c'est lui qui exprime le choix de l'utilisateur.
if VaultNeedsAuth and (FVault.Count = 0) then //
// MAIS SEULEMENT S'IL Y A UNE PORTE. Exiger une authentification que
// l'appareil ne sait plus rendre enfermait l'utilisateur dehors : le cache
// marque protege refusait de s'ouvrir, et le telechargement qui l'aurait
// remplace etait bloque par la meme condition. Quand plus rien ne peut
// authentifier, ce verrou ne protege personne - le contenu viendra du
// serveur, et c'est le mot de passe de sync qui le garde.
if VaultNeedsAuth and (FVault.Count = 0) and BiometricAvailable then
begin begin
Status('Authenticating...'); Status('Authenticating...');
AuthenticateThen('Unlock the vault', AuthenticateThen('Unlock the vault',