}
if(column == 0 && role == 0 && !property.isNull()) {
- QList<Mapping>::iterator iter;
- for(iter = _mappings.begin(); iter != _mappings.end(); iter++) {
+ QList<Mapping>::iterator iter = _mappings.begin();
+ while(iter != _mappings.end()) {
if((*iter).target == target)
- _mappings.erase(iter);
+ iter = _mappings.erase(iter);
+ else
+ iter++;
}
return;
}
QHash<QTcpSocket *, quint32>::iterator blockSizeIter = blocksizes.begin();
while(blockSizeIter != blocksizes.end()) {
if(blockSizeIter.key() == socket) {
- blocksizes.erase(blockSizeIter);
+ blockSizeIter = blocksizes.erase(blockSizeIter);
+ } else {
+ blockSizeIter++;
}
- blockSizeIter++;
}
QHash<QTcpSocket *, QVariantMap>::iterator clientInfoIter = clientInfo.begin();
while(clientInfoIter != clientInfo.end()) {
if(clientInfoIter.key() == socket) {
- clientInfo.erase(clientInfoIter);
+ clientInfoIter = clientInfo.erase(clientInfoIter);
+ } else {
+ clientInfoIter++;
}
- clientInfoIter++;
}
}
if((*i).notificationId == notificationId) {
foreach(AbstractNotificationBackend *backend, _notificationBackends)
backend->close(notificationId);
- _notifications.erase(i);
+ i = _notifications.erase(i);
break;
+ } else {
+ ++i;
}
- ++i;
}
}
if(!bufferId.isValid() || (*i).bufferId == bufferId) {
foreach(AbstractNotificationBackend *backend, _notificationBackends)
backend->close((*i).notificationId);
- _notifications.erase(i);
+ i = _notifications.erase(i);
+ } else {
+ ++i;
}
- ++i;
}
}
QList<BufferViewConfig *>::iterator iter = _newBufferViews.begin();
while(iter != _newBufferViews.end()) {
if(*iter == config) {
- _newBufferViews.erase(iter);
+ iter = _newBufferViews.erase(iter);
break;
+ } else {
+ iter++;
}
- iter++;
}
delete config;
if(_deleteBufferViews.isEmpty() && _changedBufferViews.isEmpty() && _newBufferViews.isEmpty())
while(iter != iterEnd) {
if(&(iter.key()) == &(iter.value())) {
iter.value()->deleteLater();
- _changedBufferViews.erase(iter);
+ iter = _changedBufferViews.erase(iter);
} else {
changed = true;
iter++;