short r = 0;
for(Box child = firstPackedChild(); child != null; r++) {
for(short c=0, numclear=0; child != null && c < cols; c++) {
- if (numRowsInCol[c] > r) continue;
+ if (numRowsInCol[c] > r) { numclear = 0; continue; }
if (c != 0 && c + min(cols, child.colspan) - numclear > cols) break;
if (++numclear < min(cols, child.colspan)) continue;
for(int i=c - numclear + 1; i <= c; i++) numRowsInCol[i] += child.rowspan;