summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
authorSergey Fedoseev <fedoseev.sergey@gmail.com>2017-03-23 23:27:13 +0500
committerTim Graham <timograham@gmail.com>2017-03-23 19:31:23 -0400
commitb6a6787fd857813801dbcd63ac6672da355af998 (patch)
tree4a3e6716401d3a45fadf20d702f4f2444cf7558f /django
parenta8c540accc7eb526e44ec2bc05881eb300f54530 (diff)
[1.11.x] Fixed #27603 -- Fixed AsKML when queryset is evaluated more than once.
Backport of e9149d3eb0ed0ddc8b27b1990eb2b7293c1231cd from master
Diffstat (limited to 'django')
-rw-r--r--django/contrib/gis/db/models/functions.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/django/contrib/gis/db/models/functions.py b/django/contrib/gis/db/models/functions.py
index 8a4d54aac1..95eda246ad 100644
--- a/django/contrib/gis/db/models/functions.py
+++ b/django/contrib/gis/db/models/functions.py
@@ -196,8 +196,9 @@ class AsGML(GeoFunc):
class AsKML(AsGML):
def as_sqlite(self, compiler, connection):
# No version parameter
- self.source_expressions.pop(0)
- return super(AsKML, self).as_sql(compiler, connection)
+ clone = self.copy()
+ clone.set_source_expressions(self.get_source_expressions()[1:])
+ return clone.as_sql(compiler, connection)
class AsSVG(GeoFunc):