Fix off by one error(s).

This commit is contained in:
cc9cii 2015-04-09 21:41:46 +10:00
parent be9f94b766
commit 330920daa8

View file

@ -36,9 +36,9 @@ namespace CSMWorld
std::vector<ESM::Pathgrid::Edge>::iterator iter = pathgrid.mEdges.begin(); std::vector<ESM::Pathgrid::Edge>::iterator iter = pathgrid.mEdges.begin();
for (;iter != pathgrid.mEdges.end(); ++iter) for (;iter != pathgrid.mEdges.end(); ++iter)
{ {
if ((*iter).mV0 > position) if ((*iter).mV0 >= position)
(*iter).mV0++; (*iter).mV0++;
if ((*iter).mV1 > position) if ((*iter).mV1 >= position)
(*iter).mV1++; (*iter).mV1++;
} }
@ -65,10 +65,10 @@ namespace CSMWorld
if (((*iter).mV0 == rowToRemove) || ((*iter).mV1 == rowToRemove)) if (((*iter).mV0 == rowToRemove) || ((*iter).mV1 == rowToRemove))
pathgrid.mEdges.erase(iter); pathgrid.mEdges.erase(iter);
if ((*iter).mV0 > rowToRemove) if ((*iter).mV0 >= rowToRemove)
(*iter).mV0--; (*iter).mV0--;
if ((*iter).mV1 > rowToRemove) if ((*iter).mV1 >= rowToRemove)
(*iter).mV1--; (*iter).mV1--;
} }