From adc88a72dc5fcb94d9210f00cabe1c0a9ebebd36 Mon Sep 17 00:00:00 2001 From: ced <> Date: Fri, 23 Feb 2007 07:04:25 +0000 Subject: [PATCH] KERNEL: fix where calc for list index out of range when deleting false items bzr revid: ced-1fa9970b0e09d025a10625a8d7def51644299041 --- bin/osv/orm.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/bin/osv/orm.py b/bin/osv/orm.py index 3fdfd20b8d4..6853cb6b973 100644 --- a/bin/osv/orm.py +++ b/bin/osv/orm.py @@ -1303,11 +1303,12 @@ class orm(object): qu1.append('(%s.%s %s %s)' % (table._table, x[0], x1, table._columns[x[0]]._symbol_set[0])) elif x[1]=='in': if len(x[2])>0: - todel = False + todel = [] for xitem in range(len(x[2])): if x[2][xitem]==False and isinstance(x[2][xitem],bool): - todel = xitem - del x[2][xitem] + todel.append(xitem) + for xitem in todel[::-1]: + del x[2][xitem] if x[0]=='id': qu1.append('(id=any(array[%s]))' % (','.join(['%d'] * len(x[2])),)) else: