From 1d446abc804b4b08dcf91ff5aa84a3881a48b1ec Mon Sep 17 00:00:00 2001 From: mattias Date: Mon, 29 Sep 2008 19:08:14 +0000 Subject: [PATCH] codetools: fixed close/reopen file git-svn-id: trunk@16797 - --- components/codetools/codecache.pas | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/components/codetools/codecache.pas b/components/codetools/codecache.pas index d182cf2e3c..9788b6c250 100644 --- a/components/codetools/codecache.pas +++ b/components/codetools/codecache.pas @@ -482,7 +482,7 @@ function TCodeCache.OnScannerCheckFileOnDisk(Code: pointer): boolean; var Buf: TCodeBuffer; begin Buf:=TCodeBuffer(Code); - //DebugLn('OnScannerCheckFileOnDisk A ',Buf.Filename,' AutoRev=',Buf.AutoUpdateFromDisk,' WriteLock=',GlobalWriteLockIsSet,' DiskChg=',Buf.FileOnDiskHasChanged); + //DebugLn(['OnScannerCheckFileOnDisk A ',Buf.Filename,' AutoRev=',Buf.AutoRevertFromDisk,' WriteLock=',GlobalWriteLockIsSet,' DiskChg=',Buf.FileOnDiskHasChanged,' IsDeleted=',Buf.IsDeleted]); if Buf.AutoRevertFromDisk or Buf.IsDeleted then begin if GlobalWriteLockIsSet then begin if GlobalWriteLockStep<>Buf.GlobalWriteLockStepOnLastLoad then begin @@ -497,6 +497,7 @@ begin end else begin //DebugLn(['TCodeCache.OnScannerCheckFileOnDisk AutoRevertFromDisk=',Buf.AutoRevertFromDisk,' ',Buf.Filename]); end; + //if buf.IsDeleted then debugln(['TCodeCache.OnScannerCheckFileOnDisk ',Buf.Filename,' still deleted']); Result:=true; end; @@ -821,7 +822,7 @@ end; procedure TCodeBuffer.Clear; begin - FIsDeleted:=false; + fIsDeleted:=false; FLoadDateValid:=false; inherited Clear; end; @@ -846,7 +847,7 @@ begin Result:=inherited LoadFromFile(AFilename); if Result then MakeFileDateValid; end; - if Result then FIsDeleted:=false; + if Result then IsDeleted:=false; end else Result:=false; end; @@ -857,7 +858,7 @@ begin //DebugLn('TCodeBuffer.SaveToFile ',Filename,' -> ',AFilename,' ',Result); if CompareFilenames(AFilename,Filename)=0 then begin if Result then begin - FIsDeleted:=false; + IsDeleted:=false; MakeFileDateValid; end; end; @@ -921,9 +922,11 @@ end; procedure TCodeBuffer.SetIsDeleted(const NewValue: boolean); begin if FIsDeleted=NewValue then exit; + //debugln(['TCodeBuffer.SetIsDeleted ',Filename,' ',NewValue]); FIsDeleted:=NewValue; if FIsDeleted then begin Clear; + FIsDeleted:=true; FLoadDateValid:=false; //DebugLn(['TCodeBuffer.SetIsDeleted ',Filename,' ',FileNeedsUpdate]); end;