From d318dcb788daa8de9338140b28f0bbf456708083 Mon Sep 17 00:00:00 2001 From: Joshua Goins Date: Tue, 9 Aug 2022 20:00:02 -0400 Subject: [PATCH] Use PathBuf in get_index_file --- src/gamedata.rs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/gamedata.rs b/src/gamedata.rs index 50692c6..e8fdd0f 100755 --- a/src/gamedata.rs +++ b/src/gamedata.rs @@ -1,6 +1,6 @@ use std::fs; use std::fs::DirEntry; -use std::path::PathBuf; +use std::path::{Path, PathBuf}; use crate::common::Language; use crate::dat::DatFile; use crate::exd::EXD; @@ -91,10 +91,13 @@ impl GameData { fn get_index_file(&self, path: &str) -> Option { let (repository, category) = self.parse_repository_category(path).unwrap(); - let index_path = format!("{}/sqpack/{}/{}", - self.game_directory, repository.name, repository.index_filename(category)); + let index_path : PathBuf = [self.game_directory.clone(), + "sqpack".to_string(), + repository.name.clone(), + repository.index_filename(category)] + .iter().collect(); - IndexFile::from_existing(index_path.as_str()) + IndexFile::from_existing(index_path.to_str()?) } /// Checks if a file located at `path` exists.