]> arthur.barton.de Git - netatalk.git/commitdiff
only change parent modify date if ATTRBIT_INVISIBLE is changed
authorbfernhomberg <bfernhomberg>
Tue, 1 Jun 2004 06:33:09 +0000 (06:33 +0000)
committerbfernhomberg <bfernhomberg>
Tue, 1 Jun 2004 06:33:09 +0000 (06:33 +0000)
etc/afpd/directory.c
etc/afpd/file.c

index c1b1cd0fb756d09509900f825689e93aeaea36e5..a9cfba7b3bded1e4f8b8e4148ffa6883435db570 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * $Id: directory.c,v 1.71.2.4.2.14 2004-05-10 18:40:32 didg Exp $
+ * $Id: directory.c,v 1.71.2.4.2.15 2004-06-01 06:33:10 bfernhomberg Exp $
  *
  * Copyright (c) 1990,1993 Regents of The University of Michigan.
  * All Rights Reserved.  See COPYRIGHT.
@@ -1650,8 +1650,6 @@ int setdirparams(const struct vol *vol,
         case DIRPBIT_ATTR :
             change_mdate = 1;
             memcpy( &ashort, buf, sizeof( ashort ));
-            if ((ashort & htons(ATTRBIT_INVISIBLE)))
-               change_parent_mdate = 1;
             buf += sizeof( ashort );
             break;
         case DIRPBIT_CDATE :
@@ -1784,6 +1782,9 @@ int setdirparams(const struct vol *vol,
         case DIRPBIT_ATTR :
             if (isad) {
                 ad_getattr(&ad, &bshort);
+               if ((bshort & htons(ATTRBIT_INVISIBLE)) != 
+                    (ashort & htons(ATTRBIT_INVISIBLE) & htons(ATTRBIT_SETCLR)) )
+                   change_parent_mdate = 1;
                 if ( ntohs( ashort ) & ATTRBIT_SETCLR ) {
                     bshort |= htons( ntohs( ashort ) & ~ATTRBIT_SETCLR );
                 } else {
index 2b6f12c9605982422fdf9b9a759757aa9efc79e4..68e6f6aa1834ea23ee5c10313fa61d6c9bbe3291 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * $Id: file.c,v 1.92.2.2.2.26 2004-05-11 08:31:17 didg Exp $
+ * $Id: file.c,v 1.92.2.2.2.27 2004-06-01 06:33:09 bfernhomberg Exp $
  *
  * Copyright (c) 1990,1993 Regents of The University of Michigan.
  * All Rights Reserved.  See COPYRIGHT.
@@ -820,8 +820,6 @@ int setfilparams(struct vol *vol,
         case FILPBIT_ATTR :
             change_mdate = 1;
             memcpy(&ashort, buf, sizeof( ashort ));
-            if ((ashort & htons(ATTRBIT_INVISIBLE)))
-                change_parent_mdate = 1;
             buf += sizeof( ashort );
             break;
         case FILPBIT_CDATE :
@@ -925,6 +923,9 @@ int setfilparams(struct vol *vol,
         switch(  bit ) {
         case FILPBIT_ATTR :
             ad_getattr(adp, &bshort);
+            if ((bshort & htons(ATTRBIT_INVISIBLE)) !=
+                (ashort & htons(ATTRBIT_INVISIBLE) & htons(ATTRBIT_SETCLR)) )
+                change_parent_mdate = 1;
             if ( ntohs( ashort ) & ATTRBIT_SETCLR ) {
                 bshort |= htons( ntohs( ashort ) & ~ATTRBIT_SETCLR );
             } else {