[solang] Sanitized ProgressObserver usage



commit 72ca08510538ab7033ebb40907d137bef3e014d0
Author: Debarshi Ray <rishi gnu org>
Date:   Sat Feb 20 02:41:23 2010 +0200

    Sanitized ProgressObserver usage

 src/exporter/brasero-destination.cpp |   19 ++++++++++++++++---
 1 files changed, 16 insertions(+), 3 deletions(-)
---
diff --git a/src/exporter/brasero-destination.cpp b/src/exporter/brasero-destination.cpp
index 7fdb5d0..841d5ac 100644
--- a/src/exporter/brasero-destination.cpp
+++ b/src/exporter/brasero-destination.cpp
@@ -73,7 +73,6 @@ BraseroDestination::export_photo(
     brasero_track_data_cfg_add(braseroTrackDataCfg_,
                                photo->get_uri().c_str(),
                                0);
-    observer->receive_event_notifiation();
 }
 
 void
@@ -87,8 +86,12 @@ BraseroDestination::export_photos(
         return;
     }
 
-    observer->set_event_description(_("Exporting Photos"));
-    observer->set_num_events(photos.size());
+    if (0 != observer)
+    {
+        observer->set_event_description(_("Exporting photos"));
+        observer->set_num_events(photos.size());
+        observer->set_current_events(0);
+    }
 
     braseroSessionCfg_ = brasero_session_cfg_new();
     brasero_burn_session_set_burner(
@@ -107,11 +110,21 @@ BraseroDestination::export_photos(
     for (it = photos.begin(); photos.end() != it; it++)
     {
         export_photo(*it, observer);
+
+        if (0 != observer)
+        {
+            observer->receive_event_notifiation();
+        }
     }
 
     g_object_unref(braseroTrackDataCfg_);
     braseroTrackDataCfg_ = 0;
 
+    if (0 != observer)
+    {
+        observer->reset();
+    }
+
     braseroBurnBegin_.emit();
 }
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]