issue with OS X and std::set, erase doesn't return an iterator. todo: check this
This commit is contained in:
@@ -176,7 +176,13 @@ void OverlappingPairCache::ProcessAllOverlappingPairs(OverlapCallback* callback)
|
|||||||
BroadphasePair* pair = (BroadphasePair*)(&(*it));
|
BroadphasePair* pair = (BroadphasePair*)(&(*it));
|
||||||
if (callback->ProcessOverlap(*pair))
|
if (callback->ProcessOverlap(*pair))
|
||||||
{
|
{
|
||||||
it = m_overlappingPairSet.erase(it);
|
CleanOverlappingPair(*pair);
|
||||||
|
\
|
||||||
|
std::set<BroadphasePair>::iterator it2 = it;
|
||||||
|
it++;
|
||||||
|
//why does next line not compile under OS X??
|
||||||
|
//it = m_overlappingPairSet.erase(it2);
|
||||||
|
m_overlappingPairSet.erase(it2);
|
||||||
} else
|
} else
|
||||||
{
|
{
|
||||||
it++;
|
it++;
|
||||||
|
|||||||
Reference in New Issue
Block a user