From dc44037a514f7ccee9d96525d6e8873004fc63e2 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Mon, 5 Jul 2010 01:13:03 +0000 Subject: [PATCH] Forward port no-process-after-export fix from 2.X revs 7357 and 7361. git-svn-id: svn://localhost/ardour2/branches/3.0@7368 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/ardour/butler.cc | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/libs/ardour/butler.cc b/libs/ardour/butler.cc index 3b717942f3..a77c11b983 100644 --- a/libs/ardour/butler.cc +++ b/libs/ardour/butler.cc @@ -216,14 +216,17 @@ Butler::thread_work () } } + + bytes = 0; + compute_io = true; + +restart: + disk_work_outstanding = false; + if (transport_work_requested()) { _session.butler_transport_work (); } - disk_work_outstanding = false; - bytes = 0; - compute_io = true; - begin = get_microseconds(); boost::shared_ptr rl = _session.get_routes(); @@ -273,7 +276,7 @@ Butler::thread_work () } if (!err && transport_work_requested()) { - continue; + goto restart; } if (compute_io) { @@ -332,7 +335,7 @@ Butler::thread_work () } if (!err && transport_work_requested()) { - continue; + goto restart; } if (compute_io) { @@ -358,7 +361,7 @@ Butler::thread_work () // cerr << "AFTER " << (*i)->name() << ": pb = " << (*i)->playback_buffer_load() << " cp = " << (*i)->capture_buffer_load() << endl; // } - continue; + goto restart; } paused.signal();