From ab9c1098b1c752456e8bcc0a7f00a754e1452bc0 Mon Sep 17 00:00:00 2001 From: Philip Date: Fri, 11 Mar 2022 20:16:57 +0100 Subject: [PATCH] Generate new shortcuts file on first run --- src/steam/utils.rs | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/steam/utils.rs b/src/steam/utils.rs index 5edb70d..d2f7a5f 100644 --- a/src/steam/utils.rs +++ b/src/steam/utils.rs @@ -75,22 +75,29 @@ pub fn get_shortcuts_paths( let user_folders = std::fs::read_dir(&user_data_path)?; let users_info = user_folders .filter_map(|f| f.ok()) - .filter_map(|folder| { + .filter(|folder| match folder.metadata() { + Ok(meta) => meta.is_dir(), + _ => false, + }) + .map(|folder| { let folder_path = folder.path(); let folder_str = folder_path .to_str() .expect("We just checked that this was there"); let path = format!("{}//config//shortcuts.vdf", folder_str); let shortcuts_path = Path::new(path.as_str()); + let folder_string = folder_str.to_string(); if shortcuts_path.exists() { - return Some(SteamUsersInfo { - steam_user_data_folder: folder_str.to_string(), + return SteamUsersInfo { + steam_user_data_folder: folder_string, shortcut_path: Some(shortcuts_path.to_str().unwrap().to_string()), - }) + }; } else { - return None; + return SteamUsersInfo { + steam_user_data_folder: folder_string, + shortcut_path: None, + }; } - }) .collect(); Ok(users_info)