remove tests for locate_pending() before deciding whether to increment transport...
[ardour.git] / libs / ardour / butler.cc
index 3c4af592acfeeb6b78e98c7ca78d942a2ae1c6c5..76b74ac321766844c57be69f6c9cd1dc3945940e 100644 (file)
@@ -275,7 +275,7 @@ Butler::thread_work ()
                        goto restart;
                }
 
-               disk_work_outstanding = flush_tracks_to_disk_normal (rl, err);
+               disk_work_outstanding = disk_work_outstanding || flush_tracks_to_disk_normal (rl, err);
 
                if (err && _session.actively_recording()) {
                        /* stop the transport and try to catch as much possible
@@ -334,15 +334,15 @@ Butler::flush_tracks_to_disk_normal (boost::shared_ptr<RouteList> rl, uint32_t&
 
                int ret;
 
-               DEBUG_TRACE (DEBUG::Butler, string_compose ("butler flushes track %1 capture load %2\n", tr->name(), tr->capture_buffer_load()));
+               // DEBUG_TRACE (DEBUG::Butler, string_compose ("butler flushes track %1 capture load %2\n", tr->name(), tr->capture_buffer_load()));
                ret = tr->do_flush (ButlerContext, false);
                switch (ret) {
                case 0:
-                       DEBUG_TRACE (DEBUG::Butler, string_compose ("\tflush complete for %1\n", tr->name()));
+                       //DEBUG_TRACE (DEBUG::Butler, string_compose ("\tflush complete for %1\n", tr->name()));
                        break;
 
                case 1:
-                       DEBUG_TRACE (DEBUG::Butler, string_compose ("\tflush not finished for %1\n", tr->name()));
+                       //DEBUG_TRACE (DEBUG::Butler, string_compose ("\tflush not finished for %1\n", tr->name()));
                        disk_work_outstanding = true;
                        break;
 
@@ -411,6 +411,7 @@ Butler::flush_tracks_to_disk_after_locate (boost::shared_ptr<RouteList> rl, uint
 void
 Butler::schedule_transport_work ()
 {
+       DEBUG_TRACE (DEBUG::Butler, "requesting more transport work\n");
        g_atomic_int_inc (&should_do_transport_work);
        summon ();
 }