Fix assertion failure on clicking on bundles whose channels are all of the wrong type.
git-svn-id: svn://localhost/ardour2/branches/3.0@10147 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
20dc91d0ad
commit
89543bf4db
@ -379,11 +379,21 @@ PortMatrix::visible_rows () const
|
||||
return visible_ports (_row_index);
|
||||
}
|
||||
|
||||
/** @param column Column; its bundle may be 0 if we are over a row heading.
|
||||
* @param row Row; its bundle may be 0 if we are over a column heading.
|
||||
*/
|
||||
void
|
||||
PortMatrix::popup_menu (BundleChannel column, BundleChannel row, uint32_t t)
|
||||
{
|
||||
using namespace Menu_Helpers;
|
||||
|
||||
if ((row.bundle && row.bundle->nchannels().n_total() == 0) || (column.bundle && column.bundle->nchannels().n_total() == 0)) {
|
||||
/* One of the bundles has no channels, which means that it has none of the appropriate type,
|
||||
and is only being displayed to look pretty. So we don't need to do anything.
|
||||
*/
|
||||
return;
|
||||
}
|
||||
|
||||
delete _menu;
|
||||
|
||||
_menu = new Menu;
|
||||
|
@ -328,6 +328,13 @@ PortMatrixGrid::button_press (double x, double y, int b, uint32_t t, guint)
|
||||
void
|
||||
PortMatrixGrid::set_association (PortMatrixNode node, bool s)
|
||||
{
|
||||
if (node.row.bundle->nchannels().n_total() == 0 || node.column.bundle->nchannels().n_total() == 0) {
|
||||
/* One of the bundles has no channels, which means that it has none of the appropriate type,
|
||||
and is only being displayed to look pretty. So we don't need to do anything.
|
||||
*/
|
||||
return;
|
||||
}
|
||||
|
||||
if (_matrix->show_only_bundles()) {
|
||||
|
||||
for (uint32_t i = 0; i < node.column.bundle->nchannels().n_total(); ++i) {
|
||||
|
Loading…
Reference in New Issue
Block a user