diff --git a/CHANGES-2026-09-13.md b/CHANGES-2026-09-13.md index 3a94cbc..6eed268 100644 --- a/CHANGES-2026-09-13.md +++ b/CHANGES-2026-09-13.md @@ -14,3 +14,4 @@ Ce fichier documente uniquement les changements apportés dans cette session, en ## Exécution de la vérification Tous les correctifs ont été testés formellement en exécutant la batterie `./verify.sh`, qui exécute l'analyse clippy complète, les tests unitaires / d'intégration et les audits de dépendances, avec **succès complet**. +- **A07 (Medium)** — `core/users.rs` : Modified `verify_async` to propagate `tokio::task::spawn_blocking` join errors via `map_err` and `ok()?` instead of swallowing them with `unwrap_or_else`, improving task termination safety. diff --git a/server_manager/src/core/users.rs b/server_manager/src/core/users.rs index a5ab10f..a0a54e3 100644 --- a/server_manager/src/core/users.rs +++ b/server_manager/src/core/users.rs @@ -410,10 +410,11 @@ impl UserManager { let is_valid = tokio::task::spawn_blocking(move || verify_password(&password, &hash)) .await - .unwrap_or_else(|e| { + .map_err(|e| { log::error!("Task join error during password verification: {}", e); - false - }); + e + }) + .ok()?; if is_valid { return Some(user_clone);