X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib_internal%2Funify.h;h=2c602576e642e5c150846e21af7e0c16bc62c813;hb=20f606206a2cf6e9596e0ffebf3230a019518790;hp=60691eb0cd596d0d2b054f1a04be26f06abc6ada;hpb=8c969ef86ca0c4aff7dd1d1dc483dc9cd10c79bd;p=util-vserver.git diff --git a/lib_internal/unify.h b/lib_internal/unify.h index 60691eb..2c60257 100644 --- a/lib_internal/unify.h +++ b/lib_internal/unify.h @@ -46,14 +46,22 @@ Unify_isIUnlinkable(char const *filename) NONNULL((1)); ((bool)((LHS)->st_dev ==(RHS)->st_dev && \ (LHS)->st_ino ==(RHS)->st_ino)) -#define Unify_isUnifyable(LHS, RHS) \ +#define _Unify_isUnifyable(LHS, RHS) \ ((bool)((LHS)->st_dev ==(RHS)->st_dev && \ (LHS)->st_ino !=(RHS)->st_ino && \ (LHS)->st_mode ==(RHS)->st_mode && \ (LHS)->st_uid ==(RHS)->st_uid && \ (LHS)->st_gid ==(RHS)->st_gid && \ - (LHS)->st_size ==(RHS)->st_size && \ - (LHS)->st_mtime==(RHS)->st_mtime)) + (LHS)->st_size ==(RHS)->st_size)) +#ifdef UTIL_VSERVER_UNIFY_MTIME_OPTIONAL +# define Unify_isUnifyable(LHS, RHS) \ + ((bool)(_Unify_isUnifyable(LHS, RHS) && \ + (global_args->ignore_mtime || \ + (LHS)->st_mtime==(RHS)->st_mtime))) +#else +# define Unify_isUnifyable(LHS, RHS) \ + _Unify_isUnifyable(LHS, RHS) +#endif #endif // H_UTIL_VSERVER_LIB_INTERNAL_UNIFY_H