X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Ffilm_viewer.cc;h=69496b630286eb607f405d1a38e53b14a5d37263;hb=52cc6172ce4fcca57a591e88eeaa57b4780ffb55;hp=37f9996329aa2611ea0d4df98fa1d71508ffaf72;hpb=565a0ab9fc8be5c21685b019aa06d37e6c66160c;p=dcpomatic.git diff --git a/src/wx/film_viewer.cc b/src/wx/film_viewer.cc index 37f999632..69496b630 100644 --- a/src/wx/film_viewer.cc +++ b/src/wx/film_viewer.cc @@ -258,6 +258,8 @@ FilmViewer::refresh_panel () void FilmViewer::get () { + DCPOMATIC_ASSERT (_butler); + pair, DCPTime> video; do { video = _butler->get_video (); @@ -266,6 +268,8 @@ FilmViewer::get () ((_left_eye->GetValue() && video.first->eyes() == EYES_RIGHT) || (_right_eye->GetValue() && video.first->eyes() == EYES_LEFT)) ); + _butler->rethrow (); + if (!video.first) { _frame.reset (); refresh_panel (); @@ -321,7 +325,7 @@ FilmViewer::timer () stop (); } - _timer.Start (max ((next.seconds() - time().seconds()) * 1000, 0.0), wxTIMER_ONE_SHOT); + _timer.Start (max ((next.seconds() - time().seconds()) * 1000, 1.0), wxTIMER_ONE_SHOT); if (_butler) { _butler->rethrow (); @@ -452,7 +456,7 @@ FilmViewer::start () } _playing = true; - _timer.Start (0, wxTIMER_ONE_SHOT); + timer (); } bool