]> arthur.barton.de Git - netatalk.git/commitdiff
ignore ._ appledouble files
authorFrank Lahm <franklahm@googlemail.com>
Mon, 2 Apr 2012 14:30:13 +0000 (16:30 +0200)
committerFrank Lahm <franklahm@googlemail.com>
Mon, 2 Apr 2012 14:30:13 +0000 (16:30 +0200)
NEWS
etc/cnid_dbd/cmd_dbd_scanvol.c

diff --git a/NEWS b/NEWS
index f1fe79159c5f0fb3290d9326a76f89f95d69f296..c6f50991886bc6096be179465fcc6e83aa202edd 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -15,6 +15,7 @@ Changes in 3.0 alpha2
        should be set properly to pick that up
 * UPD: Run ldconfig on Linux at the end of make install
 * FIX: afpd: ad cp on appledouble = ea volumes
        should be set properly to pick that up
 * UPD: Run ldconfig on Linux at the end of make install
 * FIX: afpd: ad cp on appledouble = ea volumes
+* FIX: dbd: ignore ._ appledouble files
 * REM: Volumes options "use dots" and "hex encoding"
 
 Changes in 3.0 alpha1
 * REM: Volumes options "use dots" and "hex encoding"
 
 Changes in 3.0 alpha1
index cad6a944857f8369b2fe7bbddd88a9f9e119afb9..dcbd4c74779161acb4be4f3b3feda12bc6bec771 100644 (file)
@@ -879,6 +879,11 @@ static int dbd_readdir(int volroot, cnid_t did)
         if (STRCMP(ep->d_name, == , ADv2_DIRNAME))
             continue;
 
         if (STRCMP(ep->d_name, == , ADv2_DIRNAME))
             continue;
 
+        if (!myvol->vfs->vfs_validupath(myvol, ep->d_name)) {
+            dbd_log(LOGDEBUG, "Ignoring \"%s\"", ep->d_name);
+            continue;
+        }
+
         if ((ret = lstat(ep->d_name, &st)) < 0) {
             dbd_log( LOGSTD, "Lost file while reading dir '%s/%s', probably removed: %s",
                      cwdbuf, ep->d_name, strerror(errno));
         if ((ret = lstat(ep->d_name, &st)) < 0) {
             dbd_log( LOGSTD, "Lost file while reading dir '%s/%s', probably removed: %s",
                      cwdbuf, ep->d_name, strerror(errno));