summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/gui/widgets/itemcontainer.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/gui/widgets/itemcontainer.cpp b/src/gui/widgets/itemcontainer.cpp
index 19f35ff02..aa254c30b 100644
--- a/src/gui/widgets/itemcontainer.cpp
+++ b/src/gui/widgets/itemcontainer.cpp
@@ -541,24 +541,27 @@ void ItemContainer::updateMatrix()
break;
}
+ int jMult = j * mGridColumns;
+ const int maxSize = mGridRows * mGridColumns;
for (std::vector<ItemIdPair*>::const_iterator iter = sortedItems.begin(),
iter_end = sortedItems.end(); iter != iter_end; ++ iter)
{
- if (j >= mGridRows)
+ if (jMult >= maxSize)
break;
- mShowMatrix[j * mGridColumns + i] = (*iter)->mId;
+ mShowMatrix[jMult + i] = (*iter)->mId;
i ++;
if (i >= mGridColumns)
{
i = 0;
j ++;
+ jMult += mGridColumns;
}
}
for (int idx = j * mGridColumns + i;
- idx < mGridRows * mGridColumns; idx ++)
+ idx < maxSize; idx ++)
{
mShowMatrix[idx] = -1;
}