Browse Source

* Fixed possible AV in DistClean (uninitialized variable)
* Also perform a distclean if a package is not compiled for the current target

git-svn-id: trunk@18060 -

joost 14 years ago
parent
commit
59e51c0bc2
1 changed files with 4 additions and 4 deletions
  1. 4 4
      packages/fpmkunit/src/fpmkunit.pp

+ 4 - 4
packages/fpmkunit/src/fpmkunit.pp

@@ -5085,8 +5085,8 @@ end;
 
 
 procedure TBuildEngine.Clean(APackage: TPackage; AllTargets: boolean);
 procedure TBuildEngine.Clean(APackage: TPackage; AllTargets: boolean);
 var
 var
-  ACPU: TCpu;
-  AOS: TOS;
+//  ACPU: TCpu;
+//  AOS: TOS;
   DirectoryList : TStringList;
   DirectoryList : TStringList;
 begin
 begin
   Log(vlInfo,SInfoCleaningPackage,[APackage.Name]);
   Log(vlInfo,SInfoCleaningPackage,[APackage.Name]);
@@ -5100,7 +5100,7 @@ begin
         // being renamed and such. See also bug 19655
         // being renamed and such. See also bug 19655
         DirectoryList := TStringList.Create;
         DirectoryList := TStringList.Create;
         try
         try
-          DirectoryList.Add(ExtractFileDir(APackage.GetUnitsOutputDir(ACPU,AOS)));
+          DirectoryList.Add(ExtractFileDir(APackage.GetUnitsOutputDir(Defaults.CPU,Defaults.OS)));
           CmdRemoveTrees(DirectoryList);
           CmdRemoveTrees(DirectoryList);
         finally
         finally
           DirectoryList.Free;
           DirectoryList.Free;
@@ -5275,7 +5275,7 @@ begin
   For I:=0 to Packages.Count-1 do
   For I:=0 to Packages.Count-1 do
     begin
     begin
     P:=Packages.PackageItems[i];
     P:=Packages.PackageItems[i];
-    If PackageOK(P) then
+    If AllTargets or PackageOK(P) then
       Clean(P, AllTargets);
       Clean(P, AllTargets);
     log(vlWarning, SWarnCleanPackagecomplete, [P.Name]);
     log(vlWarning, SWarnCleanPackagecomplete, [P.Name]);
     end;
     end;