aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/UpdateWalk.cxx5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/UpdateWalk.cxx b/src/UpdateWalk.cxx
index 322a8fce2..9a2e87d56 100644
--- a/src/UpdateWalk.cxx
+++ b/src/UpdateWalk.cxx
@@ -33,6 +33,7 @@
#include "ExcludeList.hxx"
#include "conf.h"
#include "fs/Path.hxx"
+#include "fs/FileSystem.hxx"
extern "C" {
#include "uri.h"
@@ -141,10 +142,8 @@ purge_deleted_from_directory(Directory *directory)
struct song *song, *ns;
directory_for_each_song_safe(song, ns, directory) {
- struct stat st;
const Path path = map_song_fs(song);
- if (path.IsNull() ||
- stat(path.c_str(), &st) < 0 || !S_ISREG(st.st_mode)) {
+ if (path.IsNull() || !FileExists(path)) {
db_lock();
delete_song(directory, song);
db_unlock();