mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-09-06 12:00:40 +02:00
IDE: added flag if packagesystem should free link in RemoveLink
git-svn-id: trunk@12297 -
This commit is contained in:
parent
36106630ec
commit
0bee7cfd80
@ -150,7 +150,7 @@ type
|
||||
procedure IteratePackages(MustExist: boolean; Event: TIteratePackagesEvent);
|
||||
function AddUserLink(APackage: TLazPackage): TPackageLink;
|
||||
function AddUserLink(const PkgFilename, PkgName: string): TPackageLink;
|
||||
procedure RemoveLink(APackageID: TLazPackageID);
|
||||
procedure RemoveLink(APackageID: TLazPackageID; FreeID: boolean);
|
||||
public
|
||||
property Modified: boolean read FModified write SetModified;
|
||||
property DependencyOwnerGetPkgFilename: TDependencyOwnerGetPkgFilename
|
||||
@ -756,7 +756,7 @@ begin
|
||||
Result:=OldLink;
|
||||
exit;
|
||||
end;
|
||||
RemoveLink(APackage);
|
||||
RemoveLink(APackage,false);
|
||||
end;
|
||||
// add user link
|
||||
NewLink:=TPackageLink.Create;
|
||||
@ -806,7 +806,7 @@ begin
|
||||
Result:=NewLink;
|
||||
end;
|
||||
|
||||
procedure TPackageLinks.RemoveLink(APackageID: TLazPackageID);
|
||||
procedure TPackageLinks.RemoveLink(APackageID: TLazPackageID; FreeID: boolean);
|
||||
var
|
||||
ANode: TAVLTreeNode;
|
||||
OldLink: TPackageLink;
|
||||
@ -831,7 +831,8 @@ begin
|
||||
OldLink.Free;
|
||||
Modified:=true;
|
||||
end;
|
||||
APackageID.Free;
|
||||
if FreeID then
|
||||
APackageID.Free;
|
||||
EndUpdate;
|
||||
end;
|
||||
|
||||
|
@ -3339,7 +3339,7 @@ begin
|
||||
PkgLink:=PkgLinks.FindLinkWithDependency(Dependency);
|
||||
if (PkgLink=nil) then break;
|
||||
if OpenDependencyWithPackageLink(Dependency,PkgLink) then break;
|
||||
PkgLinks.RemoveLink(PkgLink);
|
||||
PkgLinks.RemoveLink(PkgLink,true);
|
||||
until false;
|
||||
if (Dependency.LoadPackageResult=lprNotFound)
|
||||
and (Dependency.DefaultFilename<>'') then begin
|
||||
@ -3360,7 +3360,7 @@ begin
|
||||
PkgLink:=PkgLinks.AddUserLink(AFilename,Dependency.PackageName);
|
||||
if (PkgLink<>nil) then begin
|
||||
if not OpenDependencyWithPackageLink(Dependency,PkgLink) then
|
||||
PkgLinks.RemoveLink(PkgLink);
|
||||
PkgLinks.RemoveLink(PkgLink,true);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
@ -3377,7 +3377,7 @@ begin
|
||||
PkgLink:=PkgLinks.AddUserLink(AFilename,Dependency.PackageName);
|
||||
if (PkgLink<>nil) then begin
|
||||
if not OpenDependencyWithPackageLink(Dependency,PkgLink) then
|
||||
PkgLinks.RemoveLink(PkgLink);
|
||||
PkgLinks.RemoveLink(PkgLink,true);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
Loading…
Reference in New Issue
Block a user