From 2c55053cb2f874fb2699eb719f2b51f72fce045f Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Tue, 9 Jan 2018 15:39:07 +0100 Subject: dateibeziehungen.pas: alle explizit zu überwachenden sind "lokal" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Make.lps | 159 +++++++++++++++++++++++++++------------------------ dateibeziehungen.pas | 18 +++--- 2 files changed, 94 insertions(+), 83 deletions(-) diff --git a/Make.lps b/Make.lps index afb70ff..73a3a00 100644 --- a/Make.lps +++ b/Make.lps @@ -3,37 +3,37 @@ - + - + - + - + - - - + + + - - - + + + @@ -42,10 +42,10 @@ - - - - + + + + @@ -63,9 +63,9 @@ - - - + + + @@ -104,9 +104,9 @@ - - - + + + @@ -120,9 +120,9 @@ - - - + + + @@ -131,126 +131,133 @@ + + + + + + + - - + + - - + + - - + + - + - - + + - + - + - + - + - - + + - - + + - - + + - - + + - + + - - + + - - + + - - + + - - + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + diff --git a/dateibeziehungen.pas b/dateibeziehungen.pas index 4fb444f..d55fe43 100644 --- a/dateibeziehungen.pas +++ b/dateibeziehungen.pas @@ -5,7 +5,7 @@ unit dateiBeziehungen; interface uses - classes, sysUtils, tools, regExpr; + classes, sysUtils, tools, regExpr, mystringlistunit; type tZeilenTyp = (ztSuche,ztZiel,ztQuelle,ztBefehl); @@ -92,6 +92,7 @@ type tMach = class private _machDatei,_pruefSummenDatei: string; + _ueberwachteDateien: tMyStringList; _oriAbh: tGenerischeAbhaengigkeiten; _mglAbh: tExpliziteAbhaengigkeiten; _dats: tDateienMitDaten; @@ -116,7 +117,7 @@ procedure allgemeineErsetzungen(var worin: string; worinIstRegex: tRegexTyp; mac implementation uses - lowlevelunit, mystringlistunit, systemunit; + lowlevelunit, systemunit; // tGenerischeAbhaengigkeiten ************************************************************ @@ -725,6 +726,7 @@ begin _mglAbh:=tExpliziteAbhaengigkeiten.create; _dats:=tDateienMitDaten.create; _warten:=warten; + _ueberwachteDateien:=tMyStringList.create; // machDatei teilweise prüfen und setzen if machDatei='' then begin @@ -761,6 +763,7 @@ begin _mglAbh.free; _dats.mrProper; _dats.free; + _ueberwachteDateien.free; for i:=0 to length(_ign)-1 do _ign[i].free; setLength(_ign,0); @@ -830,7 +833,8 @@ begin end else begin rek:=startetMit('-r',s); - while s<>'' do + while s<>'' do begin + _ueberwachteDateien.add(char(ord('0')+byte(rek))+s); if sammleDateien(erstesArgument(s),rek)=0 then begin f.stepBack; f.readln(s); @@ -838,6 +842,7 @@ begin aufraeumen; exit; end; + end; end; end; ztBefehl: begin @@ -1038,11 +1043,10 @@ begin if (sicher=1) or // der Benutzer will es ((sicher=0) and (_dats.finde(_machDatei).aktuell<>aAktuell)) then begin // die Machdatei ist nicht aktuell lokTest:=tRegExpr.create; - if (ausgabeDatei='') or - (extractFilePath(ausgabeDatei)=extractFilePath(_pruefSummenDatei)) then - lokTest.expression:=unterVerzeichnisRegex([_pruefSummenDatei]) + if ausgabeDatei<>'' then + lokTest.expression:=unterVerzeichnisRegex(['0'+ausgabeDatei,_ueberwachteDateien]) else - lokTest.expression:=unterVerzeichnisRegex([ausgabeDatei,_pruefSummenDatei]); + lokTest.expression:=unterVerzeichnisRegex([_ueberwachteDateien]); alleDateien:=_dats.toMyStringList; alleDateien.grep('^\.uralt\.$',true); for i:=0 to befehle.count-1 do -- cgit v1.2.3-54-g00ecf