Check that get_next_frame succeeds.
[dcpomatic.git] / src / wx / gl_video_view.cc
index 2da16f1df7775b726044c3fd9f0c370e1ac19db1..ddae9bb3c4861b0406550cd9ad542ec1c0881b3d 100644 (file)
@@ -325,9 +325,12 @@ try
                        }
 
                        get_next_frame (false);
-                       set_image (player_video().first->image(bind(&PlayerVideo::force, _1, AV_PIX_FMT_RGB24), false, true));
-                       inter_position = player_video().first->inter_position();
-                       inter_size = player_video().first->inter_size();
+                       shared_ptr<PlayerVideo> pv = player_video().first;
+                       if (pv) {
+                               set_image (pv->image(bind(&PlayerVideo::force, _1, AV_PIX_FMT_RGB24), false, true));
+                               inter_position = pv->inter_position();
+                               inter_size = pv->inter_size();
+                       }
                }
                draw (inter_position, inter_size);