void PlaybackEngine::delete_render_engine()
{
renderengine_lock->lock("PlaybackEngine::delete_render_engine");
- delete render_engine; render_engine = 0;
+ if( render_engine ) {
+ render_engine->interrupt_playback();
+ render_engine->wait_done();
+ delete render_engine; render_engine = 0;
+ }
renderengine_lock->unlock();
}
// Start tracking after arming so the tracking position doesn't change.
// The tracking for a single frame command occurs during PAUSE
init_tracking();
- clear_output();
+ if( !command->single_frame() )
+ clear_output();
// Dispatch the command
start_render_engine();
break;