IDE: added checks for cleaning up codetools defines for packages and projects

git-svn-id: trunk@10285 -
This commit is contained in:
mattias 2006-12-04 00:37:36 +00:00
parent c08c61fe53
commit a6a3f56624
2 changed files with 13 additions and 3 deletions

View File

@ -4250,7 +4250,7 @@ end;
procedure TProjectDefineTemplates.Clear;
begin
if FMain<>nil then begin
if CodeToolBoss<>nil then
if (CodeToolBoss<>nil) and (FMain<>nil) then
CodeToolBoss.DefineTree.RemoveDefineTemplate(FMain);
FMain:=nil;
FSrcDirIfDef:=nil;
@ -4258,6 +4258,12 @@ begin
FOutPutSrcPath:=nil;
FOutputDir:=nil;
FFlags:=FFlags+[ptfFlagsChanged];
fLastOutputDirSrcPathIDAsString:='';
FLastCustomOptions:='';
if fLastSourceDirectories<>nil then
fLastSourceDirectories.Clear;
fLastSourceDirsIDAsString:='';
fLastUnitPath:='';
end;
end;

View File

@ -3636,14 +3636,18 @@ end;
procedure TLazPackageDefineTemplates.Clear;
begin
if FMain<>nil then begin
fLastSourceDirectories.Clear;
CodeToolBoss.DefineTree.RemoveDefineTemplate(FMain);
if (CodeToolBoss<>nil) and (FMain<>nil) then
CodeToolBoss.DefineTree.RemoveDefineTemplate(FMain);
FMain:=nil;
FOutputDir:=nil;
FOutPutSrcPath:=nil;
FSrcDirectories:=nil;
fLastOutputDirSrcPathIDAsString:='';
FLastCustomOptions:='';
fLastUnitPath:='';
fLastSourceDirsIDAsString:='';
if fLastSourceDirectories<>nil then
fLastSourceDirectories.Clear;
FFlags:=FFlags+[pdtIDChanged,pdtOutputDirChanged,pdtSourceDirsChanged,
pdtCustomDefinesChanged];
end;