From a942c0320de09a00bd7671fb01aef2506482419c Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Sun, 6 Dec 2015 15:54:53 +0000 Subject: [PATCH] Don't go into an infinite loop when recovering from a previous run in which the even the first frame was not completed. --- src/lib/reel_writer.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/lib/reel_writer.cc b/src/lib/reel_writer.cc index b26ff8064..609ea8437 100644 --- a/src/lib/reel_writer.cc +++ b/src/lib/reel_writer.cc @@ -51,6 +51,7 @@ using std::list; using std::string; +using std::cout; using boost::shared_ptr; using boost::optional; using boost::dynamic_pointer_cast; @@ -198,7 +199,7 @@ ReelWriter::check_existing_picture_asset () bool ok = false; - while (!ok) { + while (!ok && _first_nonexistant_frame > 0) { /* Read the data from the info file; for 3D we just check the left frames until we find a good one. */ @@ -227,7 +228,7 @@ ReelWriter::check_existing_picture_asset () } } - if (!_film->three_d ()) { + if (!_film->three_d() && ok) { /* If we are doing 3D we might have found a good L frame with no R, so only do this if we're in 2D and we've just found a good B(oth) frame. */ -- 2.30.2