1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-05-28 12:41:31 +03:00

When setting the column types on a subquery, ensure that the COLFLAG_HASCOLL

flag is cleared from column names from when the collating sequence name has
been removed.
[forum:/forumpost/6916dacf83|Forum post 6916dacf83].

FossilOrigin-Name: 8d9dcd7cfdd53034e21cdb2cb997b6f5fe3207ca5d0d7a0b841b8a68e6ce8624
This commit is contained in:
drh 2023-04-14 10:40:50 +00:00
parent a73f51447b
commit deabd6969b
3 changed files with 8 additions and 8 deletions

View File

@ -1,5 +1,5 @@
C Fix\sa\scosmetic\sindentation\sissue.
D 2023-04-14T10:35:29.876
C When\ssetting\sthe\scolumn\stypes\son\sa\ssubquery,\sensure\sthat\sthe\sCOLFLAG_HASCOLL\nflag\sis\scleared\sfrom\scolumn\snames\sfrom\swhen\sthe\scollating\ssequence\sname\shas\nbeen\sremoved.\n[forum:/forumpost/6916dacf83|Forum\spost\s6916dacf83].
D 2023-04-14T10:40:50.957
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@ -625,7 +625,7 @@ F src/printf.c 7eac1a9896a80697e03e08963e210830532ae2ff610e16c193e95af007ca5623
F src/random.c 606b00941a1d7dd09c381d3279a058d771f406c5213c9932bbd93d5587be4b9c
F src/resolve.c 3e53e02ce87c9582bd7e7d22f13f4094a271678d9dc72820fa257a2abb5e4032
F src/rowset.c ba9515a922af32abe1f7d39406b9d35730ed65efab9443dc5702693b60854c92
F src/select.c f803ac95411fec545e96a2667734e300428aaeb75a27d96b5b3ac62a7461b25a
F src/select.c ad6f48e0953fb0d9dd434a7fcd8bc6bde05beb82500a59fea7a7b02dc0ecfb3b
F src/shell.c.in 80f7c4c1bdabc9dab416b59287458044c01df97035d626ea57ffeabbb289bdc6
F src/sqlite.h.in 4fff9c6cc5d4cbba9532a668112efb6dc469c425e1a2196664d7c07d508363ef
F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8
@ -2052,8 +2052,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
P bb2b5ab172f0751c00343facf36fb12db10c88220caece31849f2711f12293d9
R 98fb747f8b76030eab4ec959dcc2d1ae
P 90deb84486494b903bab065fbf0174b56483c190353992b907359661393f2c54
R 74f079a7a3e0405a510d653a98c3a5fe
U drh
Z 4db1767c2c2b21dfcda57aec5fef47c6
Z 0bf573c21b8ca5b8de34fe3cc5060e37
# Remove this line to create a well-formed Fossil manifest.

View File

@ -1 +1 @@
90deb84486494b903bab065fbf0174b56483c190353992b907359661393f2c54
8d9dcd7cfdd53034e21cdb2cb997b6f5fe3207ca5d0d7a0b841b8a68e6ce8624

View File

@ -2369,12 +2369,12 @@ void sqlite3SubqueryColumnTypes(
i64 m = sqlite3Strlen30(zType);
n = sqlite3Strlen30(pCol->zCnName);
pCol->zCnName = sqlite3DbReallocOrFree(db, pCol->zCnName, n+m+2);
pCol->colFlags &= ~(COLFLAG_HASTYPE|COLFLAG_HASCOLL);
if( pCol->zCnName ){
memcpy(&pCol->zCnName[n+1], zType, m+1);
pCol->colFlags |= COLFLAG_HASTYPE;
}else{
testcase( pCol->colFlags & COLFLAG_HASTYPE );
pCol->colFlags &= ~(COLFLAG_HASTYPE|COLFLAG_HASCOLL);
}
}
pColl = sqlite3ExprCollSeq(pParse, p);