pff: bug avec l'intégration de fichier origines locaux
This commit is contained in:
parent
f17dccaaf9
commit
9481cad10c
15
pff
15
pff
|
@ -727,8 +727,9 @@ function new_cmd() {
|
||||||
if (c == "<") print f >fcreates
|
if (c == "<") print f >fcreates
|
||||||
else if (c == ">") print f >fdeletes
|
else if (c == ">") print f >fdeletes
|
||||||
}'
|
}'
|
||||||
cat "$fcreates" "$fdeletes" >"$fcds"
|
# contrairement aux fichiers normaux, ajouter le contenu de fdeletes à fupdates
|
||||||
grep -vxf "$fcds" "$flsrc" >"$fupdates"
|
# les fichiers de fdeletes sont des fichiers locaux non identifiés comme tels dans l'origine
|
||||||
|
{ grep -vxf "$fcreates" "$flsrc"; cat "$fdeletes"; } >"$fupdates"
|
||||||
array_from_lines creates "$(<"$fcreates")"; [ ${#creates[*]} -gt 0 ] && have_creates=1 || have_creates=
|
array_from_lines creates "$(<"$fcreates")"; [ ${#creates[*]} -gt 0 ] && have_creates=1 || have_creates=
|
||||||
array_from_lines updates "$(<"$fupdates")"; [ ${#updates[*]} -gt 0 ] && have_updates=1 || have_updates=
|
array_from_lines updates "$(<"$fupdates")"; [ ${#updates[*]} -gt 0 ] && have_updates=1 || have_updates=
|
||||||
enote "Fichiers origines: $((${#creates[*]} + ${#updates[*]})) au total, ${#creates[*]} nouveau(x)"
|
enote "Fichiers origines: $((${#creates[*]} + ${#updates[*]})) au total, ${#creates[*]} nouveau(x)"
|
||||||
|
@ -761,14 +762,24 @@ function new_cmd() {
|
||||||
done
|
done
|
||||||
[ $r == 0 ] || { eend $r; return 1; }
|
[ $r == 0 ] || { eend $r; return 1; }
|
||||||
for i in "${updates[@]}"; do
|
for i in "${updates[@]}"; do
|
||||||
|
# du fait qu'on intègre fdeletes dans fupdates, il est possible que
|
||||||
|
# le fichier n'existe pas dans la source. de plus, l'association
|
||||||
|
# dans losrcs n'existe pas non plus. dans ce cas, il suffit de
|
||||||
|
# d'ignorer le fichier
|
||||||
|
if [ -n "${losrcs[$i]+set}" ]; then
|
||||||
src="$srcdir/${losrcs[$i]}"
|
src="$srcdir/${losrcs[$i]}"
|
||||||
|
else
|
||||||
|
src="$srcdir/$i"
|
||||||
|
fi
|
||||||
vlfile="${i}__pv-${version}__"
|
vlfile="${i}__pv-${version}__"
|
||||||
dest="$pffdir/pff/Base/$vlfile"
|
dest="$pffdir/pff/Base/$vlfile"
|
||||||
|
if [ -e "$src" -o -L "$src" ]; then
|
||||||
mkdirof "$dest"; r=$?
|
mkdirof "$dest"; r=$?
|
||||||
edot $r "$i"; [ $r == 0 ] || break
|
edot $r "$i"; [ $r == 0 ] || break
|
||||||
cp "$src" "$dest"; r=$?
|
cp "$src" "$dest"; r=$?
|
||||||
edot $r "$i"; [ $r == 0 ] || break
|
edot $r "$i"; [ $r == 0 ] || break
|
||||||
array_add vlfiles "$vlfile"
|
array_add vlfiles "$vlfile"
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
[ $r == 0 ] || { eend $r; return 1; }
|
[ $r == 0 ] || { eend $r; return 1; }
|
||||||
eend $r
|
eend $r
|
||||||
|
|
Loading…
Reference in New Issue