projects
/
goodguy
/
cinelerra.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
build tweaks for fc30, glFinish fix
[goodguy/cinelerra.git]
/
cinelerra-5.1
/
cinelerra
/
playback3d.C
diff --git
a/cinelerra-5.1/cinelerra/playback3d.C
b/cinelerra-5.1/cinelerra/playback3d.C
index 24f8cf7032fc6dc93a8a5c9fc24b5e40b646d8b5..0f5e84fe559000f7db3d9d938b349ce4ea1112d6 100644
(file)
--- a/
cinelerra-5.1/cinelerra/playback3d.C
+++ b/
cinelerra-5.1/cinelerra/playback3d.C
@@
-769,16
+769,24
@@
void Playback3D::init_frame(Playback3DCommand *command, int is_yuv)
}
}
-void Playback3D::finish_output()
+void Playback3D::finish_output(
Canvas *canvas
)
{
Playback3DCommand command;
{
Playback3DCommand command;
+ command.canvas = canvas;
command.command = Playback3DCommand::FINISH_OUTPUT;
send_command(&command);
}
void Playback3D::finish_output_sync(Playback3DCommand *command)
{
command.command = Playback3DCommand::FINISH_OUTPUT;
send_command(&command);
}
void Playback3D::finish_output_sync(Playback3DCommand *command)
{
- glFinish();
+#ifdef HAVE_GL
+ command->canvas->lock_canvas("Playback3D::clear_output_sync");
+ if( command->canvas->get_canvas() ) {
+ command->canvas->get_canvas()->enable_opengl();
+ glFinish();
+ }
+ command->canvas->unlock_canvas();
+#endif
}
}