summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--django/db/models/sql/where.py9
1 files changed, 3 insertions, 6 deletions
diff --git a/django/db/models/sql/where.py b/django/db/models/sql/where.py
index 8b2cc8c046..160d5733b8 100644
--- a/django/db/models/sql/where.py
+++ b/django/db/models/sql/where.py
@@ -146,12 +146,9 @@ class WhereNode(tree.Node):
value) tuples, or objects supporting .clone().
"""
clone = self.__class__._new_instance(
- children=[], connector=self.connector, negated=self.negated)
- for child in self.children:
- if hasattr(child, 'clone'):
- clone.children.append(child.clone())
- else:
- clone.children.append(child)
+ children=None, connector=self.connector, negated=self.negated,
+ )
+ clone.children = self.children[:]
return clone
def relabeled_clone(self, change_map):