Skip to content

Commit dbdaa9b

Browse files
committed
Use oncecell
1 parent f64afe4 commit dbdaa9b

File tree

3 files changed

+7
-5
lines changed

3 files changed

+7
-5
lines changed

Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ rust-embed = "5.9.0"
2020
serde_json = "1.0.56"
2121
serde = { version = "1.0.114", features = ["derive"] }
2222
glob = "0.3.0"
23+
once_cell = "1.7.2"
2324

2425
[profile.release]
2526
panic = "abort"

src/main.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,9 @@ fn exec(
3939

4040
fn main() {
4141
let context = tauri::generate_context!();
42-
unsafe {
43-
scripts::PACKAGE_INFO = Some(context.package_info().clone());
44-
};
42+
scripts::PACKAGE_INFO
43+
.set(context.package_info().clone())
44+
.unwrap();
4545
tauri::Builder::default()
4646
.manage(Scripts(Default::default()))
4747
.invoke_handler(tauri::generate_handler![doc_ready, exec])

src/scripts.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ use serde::{Deserialize, Serialize};
88

99
use std::collections::HashMap;
1010

11-
pub static mut PACKAGE_INFO: Option<tauri::PackageInfo> = None;
11+
use once_cell::sync::OnceCell;
12+
pub static PACKAGE_INFO: OnceCell<tauri::PackageInfo> = OnceCell::new();
1213

1314
#[derive(Serialize, Deserialize)]
1415
struct Metadata {
@@ -66,7 +67,7 @@ pub fn build_scripts(
6667
window: Window,
6768
script_list: &mut HashMap<String, Script>,
6869
) -> tauri::Result<()> {
69-
if let Some(resource_dir) = unsafe { resource_dir(&(PACKAGE_INFO.clone()).unwrap()) } {
70+
if let Some(resource_dir) = resource_dir(&PACKAGE_INFO.get().unwrap()) {
7071
dbg!(&resource_dir);
7172
let script_path = &resource_dir.join("scripts").join("**").join("*.js");
7273
install_scripts(&window, script_list, script_path.to_str().unwrap())?;

0 commit comments

Comments
 (0)