#include "bcdisplayinfo.h"
#include "bcsignals.h"
#include "bctimer.h"
+#include "bctrace.h"
#include "bdcreate.h"
#include "brender.h"
#include "cache.h"
session->load_defaults(defaults);
// set x11_host, screens, window_config
screens = session->set_default_x11_host();
- BC_Signals::set_trap_path("/tmp/cinelerra_%d.dmp");
BC_Signals::set_trap_hook(trap_hook, this);
BC_Signals::set_catch_segv(preferences->trap_sigsegv);
BC_Signals::set_catch_intr(preferences->trap_sigintr);
+ if( preferences->trap_sigsegv || preferences->trap_sigintr ) {
+ BC_Trace::enable_locks();
+ }
+ else {
+ BC_Trace::disable_locks();
+ }
BC_WindowBase::get_resources()->popupmenu_btnup = preferences->popupmenu_btnup;
}
void MWindow::init_signals()
{
sighandler = new SigHandler;
- sighandler->initialize();
+ sighandler->initialize("/tmp/cinelerra_%d.dmp");
ENABLE_BUFFER
}
return result;
}
-void MWindow::set_brender_start()
+void MWindow::set_brender_range()
{
edl->session->brender_start = edl->local_session->get_selectionstart(1);
+ edl->session->brender_end = edl->local_session->get_selectionend(1);
+
+ if(EQUIV(edl->session->brender_end, edl->session->brender_start))
+ {
+ edl->session->brender_end = edl->tracks->total_video_length();
+ }
+
restart_brender();
gui->draw_overlays(1);
}
// Needs mwindow to do GUI
gui->set_mwindow(this);
gui->open_plugin(0, preferences, edl, plugin);
- gui->show_gui();
plugin->show = 1;
+ gui->show_gui();
}
}
plugin_gui_lock->unlock();
next_edit = edit->next;
if( edit->channel != vstream ||
!edit->asset || !edit->asset->is_asset ||
- *asset != *edit->asset )
+ !asset->equivalent(*edit->asset,1,1,edl) )
delete edit;
}
}
next_edit = edit->next;
if( !((1<<edit->channel) & channel_mask) ||
!edit->asset || !edit->asset->is_asset ||
- *asset != *edit->asset )
+ !asset->equivalent(*edit->asset,1,1,edl) )
delete edit;
}
if( !track->edits->first )