diff --git a/src/core/save.rs b/src/core/save.rs index e76da6b..a9695b5 100644 --- a/src/core/save.rs +++ b/src/core/save.rs @@ -80,20 +80,16 @@ pub fn list_available_backups(dir: &Path) -> Vec { pub fn list_available_backup_user(backup: DisplayablePath) -> Vec { match fs::read_to_string(backup.path) { - Ok(data) => { - let phone_backup: PhoneBackup = - serde_json::from_str(&data).expect("Unable to parse backup file"); - - let mut users = vec![]; - for u in phone_backup.users { - users.push(User { - id: u.id, - index: 0, - protected: false, - }); - } - users - } + Ok(data) => serde_json::from_str::(&data) + .expect("Unable to parse backup file") + .users + .into_iter() + .map(|u| User { + id: u.id, + index: 0, + protected: false, + }) + .collect(), Err(e) => { error!("[BACKUP]: Selected backup file not found: {}", e); vec![]