/[svn]/qsampler/trunk/src/qsamplerDeviceStatusForm.cpp
ViewVC logotype

Diff of /qsampler/trunk/src/qsamplerDeviceStatusForm.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3555 by capela, Tue Aug 13 10:19:32 2019 UTC revision 3667 by schoenebeck, Sun Dec 22 13:29:09 2019 UTC
# Line 221  void DeviceStatusForm::onDevicesChanged Line 221  void DeviceStatusForm::onDevicesChanged
221                          = Device::getDeviceIDs(pMainForm->client(), Device::Midi);                          = Device::getDeviceIDs(pMainForm->client(), Device::Midi);
222                  // hide and delete status forms whose device has been destroyed                  // hide and delete status forms whose device has been destroyed
223                  std::map<int, DeviceStatusForm *>::iterator iter = g_instances.begin();                  std::map<int, DeviceStatusForm *>::iterator iter = g_instances.begin();
224                  for ( ; iter != g_instances.end(); ++iter) {                  while (iter != g_instances.end()) {
225                          if (deviceIDs.find(iter->first) == deviceIDs.end()) {                          if (deviceIDs.find(iter->first) == deviceIDs.end()) {
226                                  iter->second->hide();                                  iter->second->hide();
227                                  delete iter->second;                                  delete iter->second;
228                                  g_instances.erase(iter);                                  // postfix increment here to avoid iterator invalidation (crash)
229                          }                                  g_instances.erase(iter++);
230                            } else ++iter;
231                  }                  }
232                  // create status forms for new devices                  // create status forms for new devices
233                  std::set<int>::iterator it = deviceIDs.begin();                  std::set<int>::iterator it = deviceIDs.begin();

Legend:
Removed from v.3555  
changed lines
  Added in v.3667

  ViewVC Help
Powered by ViewVC