13
0

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:
Carl Hetherington 2009-12-13 23:48:48 +00:00
parent 60cc81ea1a
commit 383b24cc48

View File

@ -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