aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorIvan Molodetskikh <yalterz@gmail.com>2024-03-28 20:59:42 +0400
committerIvan Molodetskikh <yalterz@gmail.com>2024-03-28 20:59:42 +0400
commit9b7ed57d3708d778a67e857fa59f0e7413f42f51 (patch)
treed02ddc213d8364a2bfeee042767840332792e132 /src
parentcf409a4ea6643f841aa8174442f192972f249758 (diff)
downloadniri-9b7ed57d3708d778a67e857fa59f0e7413f42f51.tar.gz
niri-9b7ed57d3708d778a67e857fa59f0e7413f42f51.tar.bz2
niri-9b7ed57d3708d778a67e857fa59f0e7413f42f51.zip
Create screenshot directory if it doesn't exist
Diffstat (limited to 'src')
-rw-r--r--src/niri.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/niri.rs b/src/niri.rs
index b36b0f55..2de30eca 100644
--- a/src/niri.rs
+++ b/src/niri.rs
@@ -3309,6 +3309,14 @@ impl Niri {
if let Some(path) = path {
debug!("saving screenshot to {path:?}");
+ if let Some(parent) = path.parent() {
+ if let Err(err) = std::fs::create_dir(parent) {
+ if err.kind() != std::io::ErrorKind::AlreadyExists {
+ warn!("error creating screenshot directory: {err:?}");
+ }
+ }
+ }
+
match std::fs::write(&path, buf) {
Ok(()) => image_path = Some(path),
Err(err) => {