X-Git-Url: http://git.cinelerra-gg.org/git/?p=goodguy%2Fhistory.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fmainsession.C;fp=cinelerra-5.1%2Fcinelerra%2Fmainsession.C;h=d919c55604d216e87573ce34d1e4cbcb822e57b1;hp=f7224b4c0cd84af9ca1174a908f4e79eb81203cf;hb=86bd203ac1fc29d93f63d13e2979468f06bdc3a2;hpb=404606b5c3b61c130942879de8bf4c4c95854cb0 diff --git a/cinelerra-5.1/cinelerra/mainsession.C b/cinelerra-5.1/cinelerra/mainsession.C index f7224b4c..d919c556 100644 --- a/cinelerra-5.1/cinelerra/mainsession.C +++ b/cinelerra-5.1/cinelerra/mainsession.C @@ -49,6 +49,7 @@ MainSession::MainSession(MWindow *mwindow) drag_assets = new ArrayList; drag_auto_gang = new ArrayList; drag_clips = new ArrayList; + drag_proxy = new ArrayList; drag_edits = new ArrayList; drag_edit = 0; clip_number = 1; @@ -113,10 +114,12 @@ MainSession::MainSession(MWindow *mwindow) MainSession::~MainSession() { + clear_drag_proxy(); delete drag_pluginservers; delete drag_assets; delete drag_auto_gang; delete drag_clips; + delete drag_proxy; delete drag_edits; } @@ -141,6 +144,13 @@ void MainSession::boundaries() CLAMP(cwindow_controls, 0, 1); } +void MainSession::clear_drag_proxy() +{ + for( int i=drag_proxy->size(); --i>=0; ) + drag_proxy->get(i)->remove_user(); + drag_proxy->remove_all(); +} + void MainSession::save_x11_host(int play_config, const char *x11_host) { strcpy(!play_config ? a_x11_host : b_x11_host, x11_host);