Fix crashes on increasing a bus' number of outputs.
git-svn-id: svn://localhost/ardour2/branches/3.0@6364 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
60cc81ea1a
commit
383b24cc48
|
@ -921,7 +921,10 @@ Panner::reset (uint32_t nouts, uint32_t npans)
|
||||||
|
|
||||||
if (nouts < 2) {
|
if (nouts < 2) {
|
||||||
/* no need for panning with less than 2 outputs */
|
/* no need for panning with less than 2 outputs */
|
||||||
goto send_changed;
|
if (changed) {
|
||||||
|
Changed (); /* EMIT SIGNAL */
|
||||||
|
}
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (nouts) {
|
switch (nouts) {
|
||||||
|
@ -999,6 +1002,14 @@ Panner::reset (uint32_t nouts, uint32_t npans)
|
||||||
(*x)->update ();
|
(*x)->update ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* must emit Changed here, otherwise the changes to the pan_control below raise further
|
||||||
|
signals which the GUI is not prepared for until it has seen the Changed here.
|
||||||
|
*/
|
||||||
|
|
||||||
|
if (changed) {
|
||||||
|
Changed (); /* EMIT SIGNAL */
|
||||||
|
}
|
||||||
|
|
||||||
/* force hard left/right panning in a common case: 2in/2out
|
/* force hard left/right panning in a common case: 2in/2out
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -1021,17 +1032,8 @@ Panner::reset (uint32_t nouts, uint32_t npans)
|
||||||
|
|
||||||
_streampanners.back()->set_position (1.0);
|
_streampanners.back()->set_position (1.0);
|
||||||
_streampanners.back()->pan_control()->list()->reset_default (1.0);
|
_streampanners.back()->pan_control()->list()->reset_default (1.0);
|
||||||
|
|
||||||
changed = true;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
send_changed:
|
|
||||||
if (changed) {
|
|
||||||
Changed (); /* EMIT SIGNAL */
|
|
||||||
}
|
|
||||||
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
Loading…
Reference in New Issue
Block a user