diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs index 6107e81e..ec5100da 100644 --- a/src/cmd/serve.rs +++ b/src/cmd/serve.rs @@ -160,7 +160,7 @@ pub fn serve(interface: &str, port: &str, config_file: &str) -> Result<()> { Write(path) | Remove(path) | Rename(_, path) => { - if is_temp_file(&path) { + if is_temp_file(&path) || path.is_dir() { continue; } diff --git a/src/rebuild.rs b/src/rebuild.rs index e775dd52..bfb3b757 100644 --- a/src/rebuild.rs +++ b/src/rebuild.rs @@ -98,6 +98,11 @@ pub fn after_content_change(site: &mut Site, path: &Path) -> Result<()> { // A page or section got deleted if !path.exists() { + // A folder got deleted, ignore this event + if !site.sections.contains_key(path) && !site.pages.contains_key(path) { + return Ok(()); + } + if is_section { // A section was deleted, many things can be impacted: // - the pages of the section are becoming orphans