From 3610121dabefdecbdd0665af1dc42f93c0e9012c Mon Sep 17 00:00:00 2001
From: Yorhel <git@yorhel.nl>
Date: Tue, 28 Apr 2009 11:00:13 +0200
Subject: [PATCH] Don't try to delete a directory that's not empty

---
 src/delete.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/delete.c b/src/delete.c
index 6ffe922..a5b5b2d 100644
--- a/src/delete.c
+++ b/src/delete.c
@@ -185,7 +185,7 @@ int delete_dir(struct dir *dr) {
     }
     if((r = chdir("..")) < 0)
       goto delete_nxt;
-    r = rmdir(dr->name);
+    r = dr->sub == NULL ? rmdir(dr->name) : 0;
   } else
     r = unlink(dr->name);
 
@@ -198,11 +198,11 @@ delete_nxt:
     while(state == DS_FAILED)
       if(input_handle(0))
         return 1;
-  } else
+  } else if(!(dr->flags & FF_DIR && dr->sub != NULL)) {
     freedir(dr);
-  if(r == -1 && root == dr)
-    return 1;
-  return 0;
+    return 0;
+  }
+  return root == dr ? 1 : 0;
 }
 
 
-- 
GitLab