]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fix a problem with a stale Select.pWith pointer when a CTE is used together
authordrh <drh@noemail.net>
Sun, 12 Apr 2015 17:35:27 +0000 (17:35 +0000)
committerdrh <drh@noemail.net>
Sun, 12 Apr 2015 17:35:27 +0000 (17:35 +0000)
with a compound query and an ORDER BY clause.

FossilOrigin-Name: 9a453f52a2b30595891604ede7d4acf61c2736a1

manifest
manifest.uuid
src/select.c
test/with1.test

index 7967b3588486dae33cd8ddd6f4ed3099c3186a2d..5478452884c2a3162d982defdf0b5c84d7b644b1 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Avoid\sproblems\swhen\sa\squery\shas\sa\sGROUP\sBY\sand\san\sORDER\sBY\sbut\sno\sFROM\sclause.
-D 2015-04-12T01:22:04.580
+C Fix\sa\sproblem\swith\sa\sstale\sSelect.pWith\spointer\swhen\sa\sCTE\sis\sused\stogether\nwith\sa\scompound\squery\sand\san\sORDER\sBY\sclause.
+D 2015-04-12T17:35:27.113
 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
 F Makefile.in 5f78b1ab81b64e7c57a75d170832443e66c0880a
 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@ -230,7 +230,7 @@ F src/printf.c 8ae1fa9d30c1200a9268a390ba9e9cea9197b27a
 F src/random.c ba2679f80ec82c4190062d756f22d0c358180696
 F src/resolve.c 41aa91af56d960e9414ce1d7c17cfb68e0d1c6cb
 F src/rowset.c eccf6af6d620aaa4579bd3b72c1b6395d9e9fa1e
-F src/select.c c28c52e353287434fac8473e56ee4be848d12c9d
+F src/select.c 117e0f9ac9254a6f7472fac5144eba21ba0b2ec1
 F src/shell.c 84a1593bd86aaa14f4da8a8f9b16fbc239d262aa
 F src/sqlite.h.in 278602140d49575e8708e643161f4263e428a02a
 F src/sqlite3.rc 992c9f5fb8285ae285d6be28240a7e8d3a7f2bad
@@ -1184,7 +1184,7 @@ F test/wild001.test bca33f499866f04c24510d74baf1e578d4e44b1c
 F test/win32heap.test ea19770974795cff26e11575e12d422dbd16893c
 F test/win32lock.test fbf107c91d8f5512be5a5b87c4c42ab9fdd54972
 F test/win32longpath.test 169c75a3b2e43481f4a62122510210c67b08f26d
-F test/with1.test 9df5cd8a62148b3d9ef8597aea563e3863018bcd
+F test/with1.test a86bf7f9288ba759a25ee57221d3bffaca36032a
 F test/with2.test ee227a663586aa09771cafd4fa269c5217eaf775
 F test/withM.test e97f2a8c506ab3ea9eab94e6f6072f6cc924c991
 F test/without_rowid1.test 7862e605753c8d25329f665fa09072e842183151
@@ -1250,7 +1250,7 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1
 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
 F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P 79326d6eece926fd1c148b29f0b726208d8b44c0
-R b8a99417c5276ad65ad7b525e5ae16a3
+P e527d96a1e098ade4e9d124b630a8c2ea2ac9b36
+R f469da7981f7e5a80ef00c68d565b4fb
 U drh
-Z ba0a0070ee213de4cf49a8279f3da0ad
+Z 637f476e29fbab1d809f7d30402eeba5
index df7dea677378b38b35c0bec8dac17734c0425bcb..cdf3e1131cb4c0d756a97f44d35a6f7b4bef35c4 100644 (file)
@@ -1 +1 @@
-e527d96a1e098ade4e9d124b630a8c2ea2ac9b36
\ No newline at end of file
+9a453f52a2b30595891604ede7d4acf61c2736a1
\ No newline at end of file
index 90aaa842a624f4231810d7c8431e99c7e46b5517..930a099e809482a88076ca79e2af06a9941cf727 100644 (file)
@@ -3883,6 +3883,7 @@ static int convertCompoundSelectToSubquery(Walker *pWalker, Select *p){
   pNew->pOrderBy = 0;
   p->pPrior = 0;
   p->pNext = 0;
+  p->pWith = 0;
   p->selFlags &= ~SF_Compound;
   assert( (p->selFlags & SF_Converted)==0 );
   p->selFlags |= SF_Converted;
index ad88a67c220da43f000de085a15b2ba3dfb4800b..80892d26422cf46cb2df0da6cd24530fd4055d31 100644 (file)
@@ -843,4 +843,10 @@ do_catchsql_test 13.3 {
   SELECT i FROM c;
 } {1 {table c has 1 values for 2 columns}}
 
+# 2015-04-12
+#
+do_execsql_test 14.1 {
+  WITH x AS (SELECT * FROM t) SELECT 0 EXCEPT SELECT 0 ORDER BY 1 COLLATE binary;
+} {}
+
 finish_test