(*chan)->write_source->mark_for_remove ();
(*chan)->write_source->drop_references ();
- _session.remove_source ((*chan)->write_source);
(*chan)->write_source.reset ();
}
if ((*chan)->write_source->removable()) {
(*chan)->write_source->mark_for_remove ();
(*chan)->write_source->drop_references ();
- _session.remove_source ((*chan)->write_source);
}
(*chan)->write_source.reset ();
Analyser::queue_source_for_analysis (source, false);
}
}
+
+ source->DropReferences.connect_same_thread (*this, boost::bind (&Session::remove_source, this, boost::weak_ptr<Source> (source)));
}
}