server/sources/rql2sql.py
branchstable
changeset 5887 3f55f0f10a22
parent 5844 df7608ecea29
child 5890 141b935a38fc
child 5898 5630bd8f98d9
--- a/server/sources/rql2sql.py	Mon Jul 05 17:06:11 2010 +0200
+++ b/server/sources/rql2sql.py	Mon Jul 05 17:55:37 2010 +0200
@@ -428,16 +428,15 @@
             p = compnode.parent
             oor = None
             while not isinstance(p, Select):
-                if p in ors:
+                if p in ors or p is None: # p is None for nodes already in fakehaving
                     break
                 if isinstance(p, Or):
                     oor = p
                 p = p.parent
             else:
                 node = oor or compnode
-                if not node in fakehaving:
-                    fakehaving.append(node)
-                    compnode.parent.remove(node)
+                fakehaving.append(node)
+                node.parent.remove(node)
     return fakehaving
 
 class SQLGenerator(object):