summaryrefslogtreecommitdiff
path: root/wallpapers.c
diff options
context:
space:
mode:
authorJon Bergli Heier <snakebite@jvnv.net>2010-02-07 13:47:05 +0100
committerJon Bergli Heier <snakebite@jvnv.net>2010-02-07 13:47:05 +0100
commitca89b73daaab2098e63361a1ce457e4594517b1f (patch)
tree24f1258423b4ff8c050f2bc803334ee87b267b53 /wallpapers.c
parent92e96c5e34fd636425672db3f021723cde85e1c1 (diff)
Added recursive removal of missing files.
Diffstat (limited to 'wallpapers.c')
-rw-r--r--wallpapers.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/wallpapers.c b/wallpapers.c
index 86f7318..a4bfb60 100644
--- a/wallpapers.c
+++ b/wallpapers.c
@@ -168,6 +168,15 @@ void wallpapers_remove_missing(struct directory_t *dir, GtkStatusbar *statusbar,
}
g_array_free(array, TRUE);
+ if(recursive && db_get_directories(dir->dirid, &array)) {
+ for(int i = 0; i < array->len; i++) {
+ struct directory_t *subdir;
+ subdir = &g_array_index(array, struct directory_t, i);
+ wallpapers_remove_missing(subdir, statusbar, recursive);
+ }
+ g_array_free(array, TRUE);
+ }
+
gdk_threads_enter();
gtk_statusbar_pop(statusbar, context_id);
gdk_threads_leave();