diff options
| author | Ruben Beltran del Rio <git@r.bdr.sh> | 2024-02-26 11:44:11 +0000 |
|---|---|---|
| committer | Ruben Beltran del Rio <git@r.bdr.sh> | 2024-02-26 11:44:11 +0000 |
| commit | 0e276d039b8613de0cbd302bf328bb660ab063b6 (patch) | |
| tree | 5395f77ca18ce151b9e331e3f2ada3d3ec461362 /src/command/add.rs | |
| parent | 606f82c76540a9d80366fdb943c06abe525f662e (diff) | |
Add blog status, correctly shift
Diffstat (limited to 'src/command/add.rs')
| -rw-r--r-- | src/command/add.rs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/command/add.rs b/src/command/add.rs index dbcc512..02da0fb 100644 --- a/src/command/add.rs +++ b/src/command/add.rs @@ -1,4 +1,4 @@ -use std::fs::{create_dir_all, rename}; +use std::fs::{create_dir_all, remove_dir_all, rename}; use std::io::Result; use super::{ generate::Generate, @@ -23,10 +23,13 @@ impl super::Command for Add { fn execute(&self, _: Option<&String>, configuration: &Configuration, _: &String) -> Result<()> { create_dir_all(&configuration.posts_directory)?; - for i in (0..configuration.max_posts).rev() { + for i in (0..configuration.max_posts - 1).rev() { let source = configuration.posts_directory.join(i.to_string()); let target = configuration.posts_directory.join((i + 1).to_string()); + if target.exists() { + remove_dir_all(&target)?; + } if source.exists() { rename(&source, &target)?; } |