mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-10 08:36:32 +01:00
Couple of bug fixes which show up when undoing solo state. Also a few comments.
git-svn-id: svn://localhost/ardour2/branches/3.0@4331 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
e8ab0cb95a
commit
be655cc5af
2 changed files with 11 additions and 8 deletions
|
|
@ -775,22 +775,24 @@ Panner::reset (uint32_t nouts, uint32_t npans)
|
|||
}
|
||||
|
||||
if (nouts < 2) {
|
||||
/* no need for panning with less than 2 outputs */
|
||||
goto send_changed;
|
||||
}
|
||||
|
||||
switch (nouts) {
|
||||
case 0:
|
||||
/* XXX: this can never happen */
|
||||
break;
|
||||
|
||||
case 1:
|
||||
/* XXX: this can never happen */
|
||||
fatal << _("programming error:")
|
||||
<< X_("Panner::reset() called with a single output")
|
||||
<< endmsg;
|
||||
/*NOTREACHED*/
|
||||
break;
|
||||
|
||||
case 2:
|
||||
/* line */
|
||||
case 2: // line
|
||||
outputs.push_back (Output (0, 0));
|
||||
outputs.push_back (Output (1.0, 0));
|
||||
|
||||
|
|
@ -899,6 +901,8 @@ Panner::remove (uint32_t which)
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
/** Remove all our StreamPanners */
|
||||
void
|
||||
Panner::clear_panners ()
|
||||
{
|
||||
|
|
@ -1060,7 +1064,7 @@ Panner::set_state (const XMLNode& node)
|
|||
|
||||
/* note that we assume that all the stream panners
|
||||
are of the same type. pretty good
|
||||
assumption, but its still an assumption.
|
||||
assumption, but it's still an assumption.
|
||||
*/
|
||||
|
||||
sp = pan_plugins[i].factory (*this, Evoral::Parameter(PanAutomation, 0, num_panners));
|
||||
|
|
@ -1090,7 +1094,7 @@ Panner::set_state (const XMLNode& node)
|
|||
}
|
||||
}
|
||||
|
||||
reset(num_panners, outputs.size());
|
||||
reset (outputs.size (), num_panners);
|
||||
/* don't try to do old-school automation loading if it wasn't marked as existing */
|
||||
|
||||
if ((prop = node.property (X_("automation")))) {
|
||||
|
|
|
|||
|
|
@ -129,9 +129,7 @@ Route::~Route ()
|
|||
free ((void*)(i->first));
|
||||
}
|
||||
|
||||
if (_control_outs) {
|
||||
delete _control_outs;
|
||||
}
|
||||
delete _control_outs;
|
||||
}
|
||||
|
||||
void
|
||||
|
|
@ -2325,6 +2323,7 @@ Route::_set_state (const XMLNode& node, bool call_base)
|
|||
string coutname = _name;
|
||||
coutname += _("[control]");
|
||||
|
||||
delete _control_outs;
|
||||
_control_outs = new IO (_session, coutname);
|
||||
_control_outs->set_state (**(child->children().begin()));
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue