aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2013-01-02 14:57:32 +0000
committerdrh <drh@noemail.net>2013-01-02 14:57:32 +0000
commitfb7773276b9fd7dbe4205ca68d40a4d174da5588 (patch)
tree9360efa82cb63550e9c0f17d8531a64f72ac8c67 /src
parentd530ee64caeaf102e8a888e12290b1436c0ed2b0 (diff)
downloadsqlite-fb7773276b9fd7dbe4205ca68d40a4d174da5588.tar.gz
sqlite-fb7773276b9fd7dbe4205ca68d40a4d174da5588.zip
When resolving result-set name collisions, make them x:1, x:2, x:3, etc.
instead of x:1, x:1:1, x:1;1;1. FossilOrigin-Name: ef01e30456670e6b1bc67fe41ec27e52c182efaf
Diffstat (limited to 'src')
-rw-r--r--src/select.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/select.c b/src/select.c
index 2f20e7aa5..7c7974e25 100644
--- a/src/select.c
+++ b/src/select.c
@@ -1375,6 +1375,9 @@ static int selectColumnsFromExprList(
for(j=cnt=0; j<i; j++){
if( sqlite3StrICmp(aCol[j].zName, zName)==0 ){
char *zNewName;
+ int k;
+ for(k=nName-1; k>1 && sqlite3Isdigit(zName[k]); k--){}
+ if( zName[k]==':' ) nName = k;
zName[nName] = 0;
zNewName = sqlite3MPrintf(db, "%s:%d", zName, ++cnt);
sqlite3DbFree(db, zName);