From b856a2a89103bbc9e0b115c5fc26360db7ffcfa8 Mon Sep 17 00:00:00 2001 From: Chris Cochrun Date: Fri, 22 Sep 2023 15:57:32 -0500 Subject: [PATCH] checking for right filename in older savefiles --- src/rust/service_item_model.rs | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/rust/service_item_model.rs b/src/rust/service_item_model.rs index 85ee786..af614c3 100644 --- a/src/rust/service_item_model.rs +++ b/src/rust/service_item_model.rs @@ -138,6 +138,7 @@ mod service_item_model { // use image::{ImageBuffer, Rgba}; use dirs; use serde_json::{json, Deserializer, Map, Serializer, Value}; + use std::ffi::{OsStr, OsString}; use std::io::{self, Read, Write}; use std::iter; use std::path::{Path, PathBuf}; @@ -767,6 +768,33 @@ mod service_item_model { } } + // older save files use servicelist.json instead of serviceitems.json + // Let's check to see if that's the case and change it's name in the + // temp dir. + for mut file in fs::read_dir(datadir.clone()) + .unwrap() + .filter(|f| { + f.as_ref() + .map(|e| { + String::from( + e.file_name().to_str().unwrap(), + ) + }) + .unwrap_or(String::from("")) + == "servicelist.json" + }) + { + let mut service_path = datadir.clone(); + service_path.push("serviceitems.json"); + match fs::rename( + file.unwrap().path(), + service_path, + ) { + Ok(i) => println!("We did it captain"), + Err(e) => println!("error: {:?}", e), + } + } + let mut service_path = datadir.clone(); service_path.push("serviceitems.json"); // let mut service_list =