|
@@ -117,6 +117,9 @@ type
|
|
Procedure Execute;override;
|
|
Procedure Execute;override;
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
+var
|
|
|
|
+ DependenciesDepth: integer;
|
|
|
|
+
|
|
{ TCommandListSettings }
|
|
{ TCommandListSettings }
|
|
|
|
|
|
procedure TCommandListSettings.Execute;
|
|
procedure TCommandListSettings.Execute;
|
|
@@ -414,10 +417,16 @@ begin
|
|
// Install needed updates
|
|
// Install needed updates
|
|
if L.Count > 0 then
|
|
if L.Count > 0 then
|
|
begin
|
|
begin
|
|
- pkgglobals.Log(vlProgres,SProgrInstallDependencies);
|
|
|
|
|
|
+ if DependenciesDepth=0 then
|
|
|
|
+ pkgglobals.Log(vlProgres,SProgrInstallDependencies);
|
|
|
|
+ inc(DependenciesDepth);
|
|
|
|
+
|
|
for i:=0 to L.Count-1 do
|
|
for i:=0 to L.Count-1 do
|
|
ExecuteAction(L[i],'install');
|
|
ExecuteAction(L[i],'install');
|
|
- pkgglobals.Log(vlProgres,SProgrDependenciesInstalled);
|
|
|
|
|
|
+
|
|
|
|
+ dec(DependenciesDepth);
|
|
|
|
+ if DependenciesDepth=0 then
|
|
|
|
+ pkgglobals.Log(vlProgres,SProgrDependenciesInstalled);
|
|
end;
|
|
end;
|
|
FreeAndNil(L);
|
|
FreeAndNil(L);
|
|
if FreeManifest then
|
|
if FreeManifest then
|
|
@@ -447,6 +456,7 @@ end;
|
|
|
|
|
|
|
|
|
|
initialization
|
|
initialization
|
|
|
|
+ DependenciesDepth:=0;
|
|
RegisterPkgHandler('update',TCommandUpdate);
|
|
RegisterPkgHandler('update',TCommandUpdate);
|
|
RegisterPkgHandler('list',TCommandListPackages);
|
|
RegisterPkgHandler('list',TCommandListPackages);
|
|
RegisterPkgHandler('scan',TCommandScanPackages);
|
|
RegisterPkgHandler('scan',TCommandScanPackages);
|