From 2e2e57650a0b502bb89f21ba3b3694aa0a2bcfae Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Wed, 20 Dec 2017 12:25:06 +0100 Subject: dateibeziehungen.pas: erst Quell-, dann Zielsummen erneuern --- Make.lps | 100 +++++++++++++++++++++------------------------------ dateibeziehungen.pas | 23 +++++++++--- 2 files changed, 59 insertions(+), 64 deletions(-) diff --git a/Make.lps b/Make.lps index f79d551..a5c0ce1 100644 --- a/Make.lps +++ b/Make.lps @@ -31,7 +31,7 @@ - + @@ -42,8 +42,8 @@ - - + + @@ -97,9 +97,9 @@ - - - + + + @@ -131,125 +131,105 @@ - + - - + - + - + - + - - + + - - + + - + + - + - - + + - - + + - + - - + + - - + + - - + - - + + - + - + - + - + - - + + + - + - + - + - - - - - - - - - - - - - - - - - - - - diff --git a/dateibeziehungen.pas b/dateibeziehungen.pas index ece2e13..d3663e2 100644 --- a/dateibeziehungen.pas +++ b/dateibeziehungen.pas @@ -591,17 +591,32 @@ begin ); if quellen[i].count + ziele[i].count > 0 then begin // sha512summen erneuern + s:='sed "'; for j:=0 to quellen[i].count-1 do s:=s+'/\s'+escapeStringToRegex(escape(quellen[i][j].name,'$','\'),rtShell,'"/')+'\$/d; '; - for j:=0 to ziele[i].count-1 do - s:=s+'/\s'+escapeStringToRegex(escape(ziele[i][j].name,'$','\'),rtShell,'"/')+'\$/d; '; s:=s+'" -i "'+escape(_pruefSummenDatei,'"\','\')+'"'; - es.last.befehle.add(s); + es.last.befehle.insert(0,s); // _vorher_ Quellen entfernen ... + s:='sha512sum'; neuSums.clear; for j:=0 to quellen[i].count-1 do neuSums.add(quellen[i][j].name); + neuSums.sort; + neuSums.uniq('-'); + for j:=0 to neuSums.count-1 do + s:=s+' "'+escape(neuSums[j],'"\','\')+'"'; + s:=s+' >> "'+escape(_pruefSummenDatei,'"\','\')+'"'; + es.last.befehle.insert(1,s); // ... und aktualisieren + + s:='sed "'; + for j:=0 to ziele[i].count-1 do + s:=s+'/\s'+escapeStringToRegex(escape(ziele[i][j].name,'$','\'),rtShell,'"/')+'\$/d; '; + s:=s+'" -i "'+escape(_pruefSummenDatei,'"\','\')+'"'; + es.last.befehle.add(s); // _nachher_ Ziele entfernen ... + + s:='sha512sum'; + neuSums.clear; for j:=0 to ziele[i].count-1 do neuSums.add(ziele[i][j].name); neuSums.sort; @@ -609,7 +624,7 @@ begin for j:=0 to neuSums.count-1 do s:=s+' "'+escape(neuSums[j],'"\','\')+'"'; s:=s+' >> "'+escape(_pruefSummenDatei,'"\','\')+'"'; - es.last.befehle.add(s); + es.last.befehle.add(s); // ... und aktualisieren end; end; neuSums.free; -- cgit v1.2.3-54-g00ecf