fix draw_refresh opengl deadlock, cleanup last chkin
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / cwindowgui.C
index 383445ae82ad5f8fedec9b8422e7d6672fbde4b3..2491571d0adb712a035f049f8967c5bb9628e42a 100644 (file)
@@ -1129,10 +1129,10 @@ void CWindowCanvas::draw_refresh(int flush)
                clear(0);
                if( mwindow->uses_opengl() ) {
                        get_canvas()->unlock_window();
                clear(0);
                if( mwindow->uses_opengl() ) {
                        get_canvas()->unlock_window();
-                       mwindow->playback_3d->finish_output();
-                       get_canvas()->lock_window("CWindowCanvas::draw_refresh");
                        get_canvas()->flush();
                        get_canvas()->sync_display();
                        get_canvas()->flush();
                        get_canvas()->sync_display();
+                       mwindow->playback_3d->finish_output();
+                       get_canvas()->lock_window("CWindowCanvas::draw_refresh");
                }
                if( refresh_frame && refresh_frame->get_w()>0 && refresh_frame->get_h()>0 ) {
                        float in_x1, in_y1, in_x2, in_y2;
                }
                if( refresh_frame && refresh_frame->get_w()>0 && refresh_frame->get_h()>0 ) {
                        float in_x1, in_y1, in_x2, in_y2;