diff options
author | drh <drh@noemail.net> | 2012-12-06 21:16:43 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2012-12-06 21:16:43 +0000 |
commit | ae80ddea9f4cf8505b5a27aeec3fa8b959218064 (patch) | |
tree | 31d97436c90f393923622de6d6183332626a8f8c /src/resolve.c | |
parent | 74358f0c77665c34db821fff16bcce51004d8185 (diff) | |
download | sqlite-ae80ddea9f4cf8505b5a27aeec3fa8b959218064.tar.gz sqlite-ae80ddea9f4cf8505b5a27aeec3fa8b959218064.zip |
Remove the Expr.pColl field and compute the collating sequence as it is needed.
This fixes the test script "shared9.test", though there is still a memory leak.
And there are other problems. Consider this a work-in-progress.
FossilOrigin-Name: fd011cb22f2d899d94ec7ce22641d7a8f5e19972
Diffstat (limited to 'src/resolve.c')
-rw-r--r-- | src/resolve.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/src/resolve.c b/src/resolve.c index 0ffc63355..c2b0523f0 100644 --- a/src/resolve.c +++ b/src/resolve.c @@ -114,10 +114,6 @@ static void resolveAlias( pDup->flags2 |= EP2_MallocedToken; pDup->u.zToken = sqlite3DbStrDup(db, zToken); } - if( pExpr->flags & EP_ExpCollate ){ - pDup->pColl = pExpr->pColl; - pDup->flags |= EP_ExpCollate; - } /* Before calling sqlite3ExprDelete(), set the EP_Static flag. This ** prevents ExprDelete() from deleting the Expr structure itself, @@ -830,13 +826,10 @@ static int resolveCompoundOrderBy( } } if( iCol>0 ){ - CollSeq *pColl = pE->pColl; - int flags = pE->flags & EP_ExpCollate; sqlite3ExprDelete(db, pE); pItem->pExpr = pE = sqlite3Expr(db, TK_INTEGER, 0); if( pE==0 ) return 1; - pE->pColl = pColl; - pE->flags |= EP_IntValue | flags; + pE->flags |= EP_IntValue; pE->u.iValue = iCol; pItem->iOrderByCol = (u16)iCol; pItem->done = 1; |