Fix:core:Flush loggers on exit to avoid loss of not yet written log data
authortegzed <tegzed@ffa7fe5e-494d-0410-b361-a75ebd5db220>
Fri, 25 May 2012 20:00:00 +0000 (20:00 +0000)
committertegzed <tegzed@ffa7fe5e-494d-0410-b361-a75ebd5db220>
Fri, 25 May 2012 20:00:00 +0000 (20:00 +0000)
git-svn-id: https://navit.svn.sourceforge.net/svnroot/navit/trunk@5114 ffa7fe5e-494d-0410-b361-a75ebd5db220

navit/navit/vehicle.c

index 4d46be7..50d4990 100644 (file)
@@ -145,6 +145,14 @@ vehicle_new(struct attr *parent, struct attr **attrs)
 void
 vehicle_destroy(struct vehicle *this_)
 {
+       /* flush all logfiles on exit to avoid loss of yet unwritten data*/
+       GHashTableIter iter;
+       gpointer key, value;
+       g_hash_table_iter_init (&iter, this_->log_to_cb);
+       while (g_hash_table_iter_next (&iter, &key, &value)) {
+               log_write(key,"",0,log_flag_force_flush);
+       }
+
        if (this_->animate_callback) {
                callback_destroy(this_->animate_callback);
                event_remove_timeout(this_->animate_timer);