}
bool inOrder = (msglist.first().msgId() < msglist.last().msgId());
-
- // check if the whole bunch fits in at one position
- if(indexForId(msglist.first().msgId()) == indexForId(msglist.last().msgId())) {
- if(inOrder) {
- insertMessageGroup(msglist);
- } else {
- QList<Message> messages = msglist;
- qSort(messages);
- insertMessageGroup(messages);
- }
- return;
- }
-
// depending on the order we have to traverse from the front to the back or vice versa
// for the sake of performance we have a little code duplication here
// if you need to do some changes here you'll probably need to change them at all
// DUPE (1 / 3)
int idx = indexForId((*iter).msgId());
- if(idx > 0)
+ if(idx >= 0)
dupeId = _messageList[idx]->msgId();
// we always compare to the previous entry...
// if there isn't, we can fastforward to the top
// build new group
int idx = indexForId((*iter).msgId());
- if(idx > 0)
+ if(idx >= 0)
dupeId = _messageList[idx]->msgId();
if(idx - 1 >= 0)
id = _messageList[idx - 1]->msgId();
// build new group
int idx = indexForId((*iter).msgId());
- if(idx > 0)
+ if(idx >= 0)
dupeId = _messageList[idx]->msgId();
if(idx - 1 >= 0)
id = _messageList[idx - 1]->msgId();