[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-03 0:25:00
Message-ID: 20050103002500.BDB261BB9F () office ! kde ! org
[Download RAW message or body]

CVS commit by eros: 

This is the correct order of deleting things now that a generator thread
may be running.


  M +7 -7      document.cpp   1.5


--- kdegraphics/kpdf/core/document.cpp  #1.4:1.5
@@ -143,4 +143,11 @@ void KPDFDocument::closeDocument()
     d->memCheckTimer->stop();
 
+    // delete contents generator
+    delete generator;
+    generator = 0;
+
+    // send an empty list to observers (to free their data)
+    foreachObserver( pageSetup( QValueVector< KPDFPage * >(), true ) );
+
     // delete pages and clear 'pages_vector' container
     for ( uint i = 0; i < pages_vector.count() ; i++ )
@@ -148,7 +155,4 @@ void KPDFDocument::closeDocument()
     pages_vector.clear();
 
-    // send an empty list to observers (to free their data)
-    foreachObserver( pageSetup( pages_vector, true ) );
-
     // clear memory management data
     QMap< int, ObserverData * >::iterator oIt = d->observers.begin(), oEnd = d->observers.end();
@@ -160,8 +164,4 @@ void KPDFDocument::closeDocument()
     }
 
-    // delete contents generator
-    delete generator;
-    generator = 0;
-
     // reset internal variables
     d->currentPage = -1;


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

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