Fix TestFreeRows
This commit is contained in:
parent
32d2838527
commit
fbe2d8ac49
@ -353,13 +353,24 @@ def ProcessComments(comments, f, width, height, bottomReserved, fontface, fontsi
|
||||
def TestFreeRows(rows, c, row, width, height, bottomReserved, lifetime):
|
||||
res = 0
|
||||
rowmax = height-bottomReserved-c[7]
|
||||
while row < rowmax and res < c[7]:
|
||||
if c[4] in (1, 2):
|
||||
while row < rowmax and res < c[7]:
|
||||
if rows[c[4]][row] and rows[c[4]][row][0]+lifetime > c[0]:
|
||||
break
|
||||
row += 1
|
||||
res += 1
|
||||
else:
|
||||
if rows[c[4]][row] and rows[c[4]][row][0]+lifetime*(rows[c[4]][row][8]+c[8])/width > c[0]:
|
||||
try:
|
||||
thresholdTime = c[0]-lifetime*(1-width/(c[8]+width))
|
||||
except ZeroDivisionError:
|
||||
thresholdTime = c[0]-lifetime
|
||||
while row < rowmax and res < c[7]:
|
||||
targetRow = rows[c[4]][row]
|
||||
try:
|
||||
if targetRow and (targetRow[0] > thresholdTime or targetRow[0]+targetRow[8]*lifetime/(targetRow[8]+width) > c[0]):
|
||||
break
|
||||
except ZeroDivisionError:
|
||||
pass
|
||||
row += 1
|
||||
res += 1
|
||||
return res
|
||||
|
Loading…
Reference in New Issue
Block a user