From 80945fe811a32804015d19f87753c566f4071ba6 Mon Sep 17 00:00:00 2001 From: Dusk Date: Mon, 31 Mar 2025 13:21:39 +0800 Subject: [PATCH] safety features --- StikJIT/StikJITApp.swift | 20 +++++++++++++------- StikJIT/Views/SettingsView.swift | 2 +- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/StikJIT/StikJITApp.swift b/StikJIT/StikJITApp.swift index 6b36350..7dc1332 100644 --- a/StikJIT/StikJITApp.swift +++ b/StikJIT/StikJITApp.swift @@ -23,6 +23,7 @@ func httpGet(_ urlString: String, result: @escaping (String?) -> Void){ if let error = error { print("Error: \(error.localizedDescription)") + result(nil) return } @@ -75,13 +76,16 @@ func UpdateRetrieval() -> Bool{ } let ver = try! String(contentsOfFile: fileURL.path) let urlString = "https://raw.githubusercontent.com/0-Blu/StikJIT/refs/heads/main/version.txt" - var res = false; + var res = false httpGet(urlString) { result in - if (ver != result){ - res = true; - } + if let fc = result { + if (ver != fc){ + res = true + } + } // if nil then request failed so we won't throw an error + } - return res; + return res } @@ -130,9 +134,11 @@ struct HeartbeatApp: App { alert_title = "Update Avaliable!" let urlString = "https://raw.githubusercontent.com/0-Blu/StikJIT/refs/heads/main/version.txt" httpGet(urlString) { result in - alert_string = "Update to: v" + result! + if result == nil { return } + alert_string = "Update to: version \(result!)!" + show_alert = true } - show_alert = true + } diff --git a/StikJIT/Views/SettingsView.swift b/StikJIT/Views/SettingsView.swift index a738bed..3c7c822 100644 --- a/StikJIT/Views/SettingsView.swift +++ b/StikJIT/Views/SettingsView.swift @@ -413,7 +413,7 @@ struct SettingsView: View { HStack { Spacer() let fileURL = URL.documentsDirectory.appendingPathComponent("version.txt") - let ver = try! String(contentsOfFile: fileURL.path) + let ver = (try? String(contentsOfFile: fileURL.path)) ?? "-" Text("Version \(ver) • iOS \(UIDevice.current.systemVersion)") .font(.footnote) .foregroundColor(.secondary.opacity(0.8))