Package: metche
Version: 1:1.2-1
Severity: wishlist
Tags: patch
Followup-For: Bug #538408

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Dear Maintainer,

for metche to save testing state this test is used :

    if changed_from "$BACKUP_DIR"/testing-latest.tar.bz2; then

The function "changed_from" will use find as in:

   if [ "$(find $(print_watched_files) $FIND_OPTS -newer "$ref_file" -print | 
head -1)" ]; then

In $FIND_OPTS we've put many files which will potentially change constantly 
without
real interest for metche:

# Example (default value):
#EXCLUDES="*.swp #* *~ *.gpg *.key ifstate adjtime ld.so.cache shadow* \
#          .cache .gnupg blkid.tab* aumixrc net.enable mtab backup.d \
#          vdirbase run.rev vdir run.rev \
#          prng_exch smtp_scache.pag smtpd_scache.pag \
#          smtp_scache.dir smtpd_scache.dir local.sh \
#          ssh_host_dsa_key* ssh_host_rsa_key*"


Problem : if one file changes in /etc, /etc will be found as changed by
find, and no testing state will be saved.


A solution might be to only search for files, not directories (works
here):



- --- /var/tmp/metche   2012-09-17 15:59:15.582761000 +0200
+++ /usr/sbin/metche    2012-09-17 16:00:03.178624000 +0200
@@ -682,7 +682,7 @@
     
     ref_file="$1"
     set -o noglob
- -    if [ "$(find $(print_watched_files) $FIND_OPTS -newer "$ref_file" -print 
| head -1)" ]; then
+    if [ "$(find $(print_watched_files) -type f -a '(' $FIND_OPTS -newer 
"$ref_file" -print ')' | head -1)" ]; then
         set +o noglob
         return 0
     else


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iEYEARECAAYFAlBXO+YACgkQNE22OINSnCor3ACZAX+GU2ynWKcbnD8hD6UhJE/w
um8An0Kd6f2ol1bihp4iZCJptvdE79Is
=yhlh
-----END PGP SIGNATURE-----


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to