1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-08 14:02:16 +03:00

When changing a large integer into a floating point value, cancel the

string representation.  Fix for
[forum:/forumpost/5c74a3bc4a|forum post 5c74a3bc4a].

FossilOrigin-Name: 3e2da8a7e35c839128d26aac575605e1e34889e8ab3484440bdd65c4d752c6bb
This commit is contained in:
drh
2023-04-26 18:23:47 +00:00
parent 69d98d9f93
commit d924af2325
3 changed files with 9 additions and 10 deletions

View File

@@ -1,5 +1,5 @@
C Allow\sthe\ssessions\smodule\sto\sbe\sconfigured\sto\scapture\schanges\sfrom\stables\swith\sno\sexplicit\sPRIMARY\sKEY. C When\schanging\sa\slarge\sinteger\sinto\sa\sfloating\spoint\svalue,\scancel\sthe\nstring\srepresentation.\s\sFix\sfor\n[forum:/forumpost/5c74a3bc4a|forum\spost\s5c74a3bc4a].
D 2023-04-25T20:41:19.652 D 2023-04-26T18:23:47.136
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -703,7 +703,7 @@ F src/upsert.c 5303dc6c518fa7d4b280ec65170f465c7a70b7ac2b22491598f6d0b4875b3145
F src/utf.c ee39565f0843775cc2c81135751ddd93eceb91a673ea2c57f61c76f288b041a0 F src/utf.c ee39565f0843775cc2c81135751ddd93eceb91a673ea2c57f61c76f288b041a0
F src/util.c b1d8d87c4c8c77e70f48c43f91444fd66d91532693573b70b837afd572010176 F src/util.c b1d8d87c4c8c77e70f48c43f91444fd66d91532693573b70b837afd572010176
F src/vacuum.c 84ce7f01f8a7a08748e107a441db83bcec13970190ddcb0c9ff522adbc1c23fd F src/vacuum.c 84ce7f01f8a7a08748e107a441db83bcec13970190ddcb0c9ff522adbc1c23fd
F src/vdbe.c a6c52ba65e8ceb574fe0eda62af84e6c50c176ffc5f310c613425f7ab2b1484b F src/vdbe.c 1d3e3b10ce83d1470bc349e9fe842ddded303591bae4c49e3292975f3c4d9beb
F src/vdbe.h 637ae853b7d42ae3951034cc63ab7c8af837861f79504cdb5399552fcd89a884 F src/vdbe.h 637ae853b7d42ae3951034cc63ab7c8af837861f79504cdb5399552fcd89a884
F src/vdbeInt.h a4147a4ddf613cb1bcb555ace9e9e74a9c099d65facd88155f191b1fb4d74cfb F src/vdbeInt.h a4147a4ddf613cb1bcb555ace9e9e74a9c099d65facd88155f191b1fb4d74cfb
F src/vdbeapi.c 1a95162e26d5eda3b7b46fbe4fcbc33eb7f801529d66fc2e14c52094a5523339 F src/vdbeapi.c 1a95162e26d5eda3b7b46fbe4fcbc33eb7f801529d66fc2e14c52094a5523339
@@ -2060,9 +2060,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
P faa1575ce0a39a2335a77057e8769a4e67aedd6326b4627988d03f0cb21fc39a 8a612f0860126c0c8473b1e65fcabb9a8821d8bf09fdf3f6018acfc99df9af71 P 5d4431bc44e206f48f3bcc1f51399b38bd4cb418e7e50a37495475fb8da04646
R ad733d62a9c199f3e70fa032fba3e6af R 890da1742f527a634e898a7eb7549799
T +closed 8a612f0860126c0c8473b1e65fcabb9a8821d8bf09fdf3f6018acfc99df9af71 U drh
U dan Z a31dc7374b94808e2db1fdf0feced2a2
Z 8fa09f18d44011739b0f388938c890f1
# Remove this line to create a well-formed Fossil manifest. # Remove this line to create a well-formed Fossil manifest.

View File

@@ -1 +1 @@
5d4431bc44e206f48f3bcc1f51399b38bd4cb418e7e50a37495475fb8da04646 3e2da8a7e35c839128d26aac575605e1e34889e8ab3484440bdd65c4d752c6bb

View File

@@ -3240,7 +3240,7 @@ case OP_Affinity: {
}else{ }else{
pIn1->u.r = (double)pIn1->u.i; pIn1->u.r = (double)pIn1->u.i;
pIn1->flags |= MEM_Real; pIn1->flags |= MEM_Real;
pIn1->flags &= ~MEM_Int; pIn1->flags &= ~(MEM_Int|MEM_Str);
} }
} }
REGISTER_TRACE((int)(pIn1-aMem), pIn1); REGISTER_TRACE((int)(pIn1-aMem), pIn1);