summaryrefslogtreecommitdiff
path: root/indra/llmessage/llcircuit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/llmessage/llcircuit.cpp')
-rwxr-xr-xindra/llmessage/llcircuit.cpp10
1 files changed, 3 insertions, 7 deletions
diff --git a/indra/llmessage/llcircuit.cpp b/indra/llmessage/llcircuit.cpp
index 9538c4c6db..955a66f864 100755
--- a/indra/llmessage/llcircuit.cpp
+++ b/indra/llmessage/llcircuit.cpp
@@ -1095,7 +1095,8 @@ void LLCircuit::sendAcks(F32 collect_time)
circuit_data_map::iterator it = mSendAckMap.begin();
while (it != mSendAckMap.end())
{
- cd = (*it).second;
+ circuit_data_map::iterator cur_it = it++;
+ cd = (*cur_it).second;
S32 count = (S32)cd->mAcks.size();
F32 age = cd->getAgeInSeconds() - cd->mAckCreationTime;
if (age > collect_time || count == 0)
@@ -1138,12 +1139,7 @@ void LLCircuit::sendAcks(F32 collect_time)
cd->mAckCreationTime = 0.f;
}
// remove data map
- it = mSendAckMap.erase(it);
- }
- else
- {
- //continue collecting acks for this map
- ++it;
+ mSendAckMap.erase(cur_it);
}
}
}