Make sure CapturingProcessors write a type to their state node so that they can be reloaded without a crash.
git-svn-id: svn://localhost/ardour2/branches/3.0@9006 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
35ea412280
commit
cda09a0878
@ -39,6 +39,7 @@ class CapturingProcessor : public Processor
|
||||
void run (BufferSet& bufs, framepos_t start_frame, framepos_t end_frame, pframes_t nframes, bool result_required);
|
||||
bool configure_io (ChanCount in, ChanCount out);
|
||||
bool can_support_io_configuration (const ChanCount& in, ChanCount& out) const;
|
||||
virtual XMLNode& state (bool);
|
||||
|
||||
private:
|
||||
|
||||
|
@ -72,4 +72,12 @@ CapturingProcessor::realloc_buffers()
|
||||
capture_buffers.ensure_buffers (_configured_input, block_size);
|
||||
}
|
||||
|
||||
XMLNode &
|
||||
CapturingProcessor::state (bool full)
|
||||
{
|
||||
XMLNode& node = Processor::state (full);
|
||||
|
||||
node.add_property (X_("type"), X_("capture"));
|
||||
}
|
||||
|
||||
} // namespace ARDOUR
|
||||
|
@ -2348,6 +2348,8 @@ Route::set_processor_state (const XMLNode& node)
|
||||
must_configure = true;
|
||||
}
|
||||
_monitor_control->set_state (**niter, Stateful::current_state_version);
|
||||
} else if (prop->value() == "capture") {
|
||||
_capturing_processor.reset (new CapturingProcessor (_session));
|
||||
} else {
|
||||
ProcessorList::iterator o;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user