[READ-ONLY] Mirror of https://github.com/probablykasper/time-machine-inspector. Time Machine backup size inspector app
backup macos tauri time-machine
0

Configure Feed

Select the types of activity you want to include in your feed.

Remove LoadedBackup on error

Kasper (Jan 17, 2022, 8:51 AM +0100) fd81eee9 c5dc5d1f

+23 -13
+23 -13
src-tauri/src/cmd.rs
··· 129 129 Ok(info.collect()) 130 130 } 131 131 132 + async fn do_compare(old: &str, new: &str, w: Window) -> Result<DirMap<u64>, String> { 133 + full_disk_access(w).await?; 134 + Ok(compare::compare(&old, &new)?) 135 + } 136 + 132 137 #[command] 133 138 pub async fn get_backup<'a>( 134 139 old: String, ··· 170 175 } 171 176 } 172 177 173 - full_disk_access(w).await?; 174 - let dir_map = compare::compare(&old, &new)?; 175 - 176 - let mut loaded_backups = state.lock()?; 177 - let backup = LoadedBackup { 178 - old, 179 - new, 180 - map: dir_map.clone(), 181 - loading: false, 182 - }; 183 - loaded_backups.insert(old_new, backup); 184 - 185 - Ok(dir_map) 178 + match do_compare(&old, &new, w).await { 179 + Ok(dir_map) => { 180 + let mut loaded_backups = state.lock()?; 181 + let backup = LoadedBackup { 182 + old, 183 + new, 184 + map: dir_map.clone(), 185 + loading: false, 186 + }; 187 + loaded_backups.insert(old_new, backup); 188 + return Ok(dir_map); 189 + } 190 + Err(e) => { 191 + let mut loaded_backups = state.lock()?; 192 + loaded_backups.remove(&old_new); 193 + return Err(e); 194 + } 195 + } 186 196 }