diff --git a/plugins/dialog/src/commands.rs b/plugins/dialog/src/commands.rs index faf553a4..905c01ca 100644 --- a/plugins/dialog/src/commands.rs +++ b/plugins/dialog/src/commands.rs @@ -115,16 +115,18 @@ pub(crate) async fn open( let folders = dialog_builder.blocking_pick_folders(); if let Some(folders) = &folders { for folder in folders { - window - .fs_scope() - .allow_directory(folder, options.recursive)?; + if let Some(s) = window.try_fs_scope() { + s.allow_directory(folder, options.recursive)?; + } } } OpenResponse::Folders(folders) } else { let folder = dialog_builder.blocking_pick_folder(); if let Some(path) = &folder { - window.fs_scope().allow_directory(path, options.recursive)?; + if let Some(s) = window.try_fs_scope() { + s.allow_directory(path, options.recursive)?; + } } OpenResponse::Folder(folder) } @@ -135,7 +137,9 @@ pub(crate) async fn open( let files = dialog_builder.blocking_pick_files(); if let Some(files) = &files { for file in files { - window.fs_scope().allow_file(&file.path)?; + if let Some(s) = window.try_fs_scope() { + s.allow_file(&file.path)?; + } window .state::() .allow_file(&file.path)?; @@ -145,7 +149,9 @@ pub(crate) async fn open( } else { let file = dialog_builder.blocking_pick_file(); if let Some(file) = &file { - window.fs_scope().allow_file(&file.path)?; + if let Some(s) = window.try_fs_scope() { + s.allow_file(&file.path)?; + } window .state::() .allow_file(&file.path)?; diff --git a/plugins/fs/src/lib.rs b/plugins/fs/src/lib.rs index aff55da3..737189d5 100644 --- a/plugins/fs/src/lib.rs +++ b/plugins/fs/src/lib.rs @@ -57,7 +57,7 @@ pub fn init() -> TauriPlugin> { .as_ref() .map(|c| &c.scope) .unwrap_or(&default_scope), - )); + )?); Ok(()) }) .on_event(|app, event| {