summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/engine
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2016-03-30 17:27:53 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2016-03-30 17:27:53 -0400
commitdd20f56bc9a32f0c3afc545ed519dce8b028792c (patch)
tree698d70dc7613979599910edb0b2815d98acbea6f /lib/sqlalchemy/engine
parent4df1e07bb9c43ed8d1927a90c75f3142beaa403a (diff)
downloadsqlalchemy-dd20f56bc9a32f0c3afc545ed519dce8b028792c.tar.gz
- make sure negative row indexes are based on the size of the
number of columns we're actually reporting on - add more tests for negative row index - changelog/migration
Diffstat (limited to 'lib/sqlalchemy/engine')
-rw-r--r--lib/sqlalchemy/engine/result.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/sqlalchemy/engine/result.py b/lib/sqlalchemy/engine/result.py
index afa6b4dca..0333d9ec2 100644
--- a/lib/sqlalchemy/engine/result.py
+++ b/lib/sqlalchemy/engine/result.py
@@ -220,11 +220,14 @@ class ResultMetaData(object):
# implementation to avoid an expensive
# isinstance(key, util.int_types) in the most common
# case path
+
+ len_raw = len(raw)
+
self._keymap.update([
(elem[0], (elem[3], elem[4], elem[0]))
for elem in raw
] + [
- (elem[0] - num_ctx_cols, (elem[3], elem[4], elem[0]))
+ (elem[0] - len_raw, (elem[3], elem[4], elem[0]))
for elem in raw
])