[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    kdegraphics/kpdf/core
From:       Enrico Ros <rosenric () dei ! unipd ! it>
Date:       2005-01-28 18:18:49
Message-ID: 20050128181849.5B2131BBA0 () office ! kde ! org
[Download RAW message or body]

CVS commit by eros: 

FIX: Delete allocation descriptors when dynamic observers are removed.
BUG:98091


  M +15 -0     document.cpp   1.25


--- kdegraphics/kpdf/core/document.cpp  #1.24:1.25
@@ -245,4 +245,19 @@ void KPDFDocument::removeObserver( Docum
             (*it)->deletePixmap( observerId );
 
+        // [MEM] free observer's allocation descriptors
+        QValueList< AllocatedPixmap * >::iterator aIt = d->allocatedPixmapsFifo.begin();
+        QValueList< AllocatedPixmap * >::iterator aEnd = d->allocatedPixmapsFifo.end();
+        while ( aIt != aEnd )
+        {
+            AllocatedPixmap * p = *aIt;
+            if ( p->id == observerId )
+            {
+                aIt = d->allocatedPixmapsFifo.remove( aIt );
+                delete p;
+            }
+            else
+                ++aIt;
+        }
+
         // delete observer entry from the map
         d->observers.remove( observerId );


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic