From a36f632ed5e56196b64e8db410a9d396acf90970 Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Fri, 23 Mar 2018 12:31:27 +0100 Subject: dateibeziehungen.pas: bugfix wenn nichts passt --- Make.lps | 80 ++++++++++++++++++++++++++-------------------------- dateibeziehungen.pas | 7 +++-- 2 files changed, 45 insertions(+), 42 deletions(-) diff --git a/Make.lps b/Make.lps index c7c5e25..658fae9 100644 --- a/Make.lps +++ b/Make.lps @@ -7,7 +7,7 @@ - + @@ -42,9 +42,9 @@ - - - + + + @@ -148,123 +148,123 @@ - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - + + - + - - + + - + + - - + + - + - - + + - - + + - + - + diff --git a/dateibeziehungen.pas b/dateibeziehungen.pas index 4eea14d..ebcc892 100644 --- a/dateibeziehungen.pas +++ b/dateibeziehungen.pas @@ -566,7 +566,7 @@ begin s:=quellenREs[ii]; if (leftStr(s,1)='^') and (rightStr(s,1)='$') then begin // es handelt sich um einen regex if not quellErsetzung(s,rtFpc,tmpQs,ii) then // regex-Substitution nicht erfolgreich - - tmpQs.delete(tmpQs.count-1) // wird behandelt wie nie passender regex + setLength(idxs[ii],0) // wird behandelt wie nie passender regex else dats.matchAll(s,idxs[ii],true); end @@ -574,12 +574,15 @@ begin delete(s,1,1); delete(s,length(s),1); if not quellErsetzung(s,rtKein,tmpQs,ii) then // Substitution nicht erfolgreich - - tmpQs.delete(tmpQs.count-1) // wird behandelt wie nicht existente Datei + setLength(idxs[ii],0) // wird behandelt wie nicht existente Datei else dats.matchAll(s,idxs[ii],false); end else fehler('Unbekannte Quell-Syntax: '''+s+''' - weder ''"/pfad/zur/Quelle"'' noch ''^/regex/der/auf/Quelle\.passt$''!'); + if length(idxs[ii])=0 then + while tmpQs.count>=max(1,ii) do + tmpQs.delete(tmpQs.count-1); end; begin -- cgit v1.2.3-54-g00ecf