Parcourir la source

apt-pkg/depcache.cc:
- Call opProgress->Update() less often too avoid spending too
much time in it (it shows up relatively high in the callgrind logs).
But do call it more often than just for each percent so that the
UI frontends can use the OpProgress::Update() calling to do e.g. UI
updates

Michael Vogt il y a 17 ans
Parent
commit
2edcefd596
1 fichiers modifiés avec 2 ajouts et 8 suppressions
  1. 2 8
      apt-pkg/depcache.cc

+ 2 - 8
apt-pkg/depcache.cc

@@ -127,12 +127,9 @@ bool pkgDepCache::Init(OpProgress *Prog)
    /* Set the current state of everything. In this state all of the
       packages are kept exactly as is. See AllUpgrade */
    int Done = 0;
-   int Update_interval = Head().PackageCount/100;
-   if (Update_interval == 0)
-      Update_interval = 1;
    for (PkgIterator I = PkgBegin(); I.end() != true; I++,Done++)
    {
-      if (Prog != 0 && Done%Update_interval == 0)
+      if (Prog != 0 && Done%20 == 0)
 	 Prog->Progress(Done);
       
       // Find the proper cache slot
@@ -615,12 +612,9 @@ void pkgDepCache::Update(OpProgress *Prog)
    
    // Perform the depends pass
    int Done = 0;
-   int Update_interval = Head().PackageCount;
-   if (Update_interval == 0)
-      Update_interval = 1;
    for (PkgIterator I = PkgBegin(); I.end() != true; I++,Done++)
    {
-      if (Prog != 0 && Done%Update_interval == 0)
+      if (Prog != 0 && Done%20 == 0)
 	 Prog->Progress(Done);
       for (VerIterator V = I.VersionList(); V.end() != true; V++)
       {