mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-10 00:34:59 +01:00
Fix sends.
git-svn-id: svn://localhost/ardour2/branches/3.0@4426 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
7593f104ab
commit
d58b8c243f
2 changed files with 10 additions and 0 deletions
|
|
@ -516,6 +516,10 @@ ProcessorBox::choose_send ()
|
|||
|
||||
ios->show_all ();
|
||||
|
||||
/* bit of a hack; keep a shared_ptr to send around so that it doesn't get deleted while
|
||||
the IOSelectorWindow is doing its stuff */
|
||||
_send_being_created = send;
|
||||
|
||||
boost::shared_ptr<Processor> r = boost::static_pointer_cast<Processor>(send);
|
||||
|
||||
ios->selector().Finished.connect (bind (mem_fun(*this, &ProcessorBox::send_io_finished), boost::weak_ptr<Processor>(r), ios));
|
||||
|
|
@ -526,6 +530,9 @@ ProcessorBox::send_io_finished (IOSelector::Result r, boost::weak_ptr<Processor>
|
|||
{
|
||||
boost::shared_ptr<Processor> processor (weak_processor.lock());
|
||||
|
||||
/* now we can lose the dummy shared_ptr */
|
||||
_send_being_created.reset ();
|
||||
|
||||
if (!processor) {
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue