diff options
-rw-r--r-- | libs/surfaces/mackie/surface.cc | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libs/surfaces/mackie/surface.cc b/libs/surfaces/mackie/surface.cc index c5b2fe5b1d..98ad7981ee 100644 --- a/libs/surfaces/mackie/surface.cc +++ b/libs/surfaces/mackie/surface.cc @@ -390,11 +390,15 @@ Surface::setup_master () } if (!_master_fader) { - _master_fader = dynamic_cast<Fader*> (Fader::factory (*this, _mcp.device_info().strip_cnt(), "master", *groups["master"])); - Groups::iterator group_it; group_it = groups.find("master"); + if (group_it == groups.end()) { + groups["master"] = new Group ("master"); + } + + _master_fader = dynamic_cast<Fader*> (Fader::factory (*this, _mcp.device_info().strip_cnt(), "master", *group_it->second)); + DeviceInfo device_info = _mcp.device_info(); GlobalButtonInfo master_button = device_info.get_global_button(Button::MasterFaderTouch); Button* bb = dynamic_cast<Button*> (Button::factory ( |