]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Remove unnecessary calls to memAboutToChange() in vdbe.c. An affinity
authordrh <drh@noemail.net>
Thu, 30 Sep 2010 18:12:01 +0000 (18:12 +0000)
committerdrh <drh@noemail.net>
Thu, 30 Sep 2010 18:12:01 +0000 (18:12 +0000)
change no longer invalidates shallow copies.

FossilOrigin-Name: afb0fd0b0421c42630c5e6e5e8811aca634bc9d0

manifest
manifest.uuid
src/vdbe.c

index 607886fbf260bea79c5a349a3d027c686063f3eb..8e2bfc803b26d7d7ae7fb2f49087f40f32a1bee5 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,8 +1,8 @@
 -----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA1
 
-C Do\scorrect\saffinity\stransformations\son\sfloating\spoint\svalues\swhich\shave\na\sdecimal\spoint\sat\sthe\sbeginning\sor\send\sof\sthe\smantissa.\nTicket\s[3998683a16a7076e08f5].
-D 2010-09-30T17:33:12
+C Remove\sunnecessary\scalls\sto\smemAboutToChange()\sin\svdbe.c.\s\sAn\saffinity\nchange\sno\slonger\sinvalidates\sshallow\scopies.
+D 2010-09-30T18:12:02
 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
 F Makefile.in c599a15d268b1db2aeadea19df2adc3bf2eb6bee
 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@ -228,7 +228,7 @@ F src/update.c 227e6cd512108b84f69421fc6c7aa1b83d60d6e0
 F src/utf.c 1baeeac91707a4df97ccc6141ec0f808278af685
 F src/util.c cd78524566fe45671863eee78685969a4bfd4e4c
 F src/vacuum.c 924bd1bcee2dfb05376f79845bd3b4cec7b54b2f
-F src/vdbe.c 447577ca9db7cccac30dd8ea07aeb6a4ddee9cde
+F src/vdbe.c e1aa917961e69f71c80f46ce231b496d3c841ae1
 F src/vdbe.h 4de0efb4b0fdaaa900cf419b35c458933ef1c6d2
 F src/vdbeInt.h 7f4cf1b2b69bef3a432b1f23dfebef57275436b4
 F src/vdbeapi.c 03cddfa4f85cadf608c0d28ff6b622b7da432446
@@ -874,14 +874,14 @@ F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
 F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
 F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
-P 43fef1cab6315f837782ea601d5a2aeb9843ab3c
-R 9f0571eacddb9a3dd22902b2fc6da09d
+P ca154f97a590745539b2cbfd77eb319fd7392a40
+R 748449bce6ae506eaa073ea594abdada
 U drh
-Z c3bfcfff0e351511af94c6133a9e5932
+Z 093ac075ab4b1886bb1eccb584418581
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.6 (GNU/Linux)
 
-iD8DBQFMpMncoxKgR168RlERApVjAJ9CgWo7czjJJMuzPPhDGIuxcWDpSACeLMY+
-2nv8gkZ9kYhTsRmCj46G7ik=
-=tJZ/
+iD8DBQFMpNL1oxKgR168RlERAjjtAJ4+t7sulYFx05+58t1+K8swwMqAWQCfbEoM
+G6/RegdDSppspf4YTh1aD/Y=
+=7FrQ
 -----END PGP SIGNATURE-----
index 8e6154f471c021654737c0c1c3bf0168b92ebf1a..e03860e931812fd10786d4fa6816ab1432bee41d 100644 (file)
@@ -1 +1 @@
-ca154f97a590745539b2cbfd77eb319fd7392a40
\ No newline at end of file
+afb0fd0b0421c42630c5e6e5e8811aca634bc9d0
\ No newline at end of file
index 7718516faafb874be1e5eb62ca83c2e692da92a2..02d1a406c984a0d90edd09048c5a34e1ddd2b4c7 100644 (file)
@@ -1541,7 +1541,6 @@ case OP_MustBeInt: {            /* jump, in1 */
 */
 case OP_RealAffinity: {                  /* in1 */
   pIn1 = &aMem[pOp->p1];
-  memAboutToChange(p, pIn1);
   if( pIn1->flags & MEM_Int ){
     sqlite3VdbeMemRealify(pIn1);
   }
@@ -1584,7 +1583,6 @@ case OP_ToText: {                  /* same as TK_TO_TEXT, in1 */
 */
 case OP_ToBlob: {                  /* same as TK_TO_BLOB, in1 */
   pIn1 = &aMem[pOp->p1];
-  memAboutToChange(p, pIn1);
   if( pIn1->flags & MEM_Null ) break;
   if( (pIn1->flags & MEM_Blob)==0 ){
     applyAffinity(pIn1, SQLITE_AFF_TEXT, encoding);
@@ -1609,7 +1607,6 @@ case OP_ToBlob: {                  /* same as TK_TO_BLOB, in1 */
 */
 case OP_ToNumeric: {                  /* same as TK_TO_NUMERIC, in1 */
   pIn1 = &aMem[pOp->p1];
-  memAboutToChange(p, pIn1);
   sqlite3VdbeMemNumerify(pIn1);
   break;
 }
@@ -1626,7 +1623,6 @@ case OP_ToNumeric: {                  /* same as TK_TO_NUMERIC, in1 */
 */
 case OP_ToInt: {                  /* same as TK_TO_INT, in1 */
   pIn1 = &aMem[pOp->p1];
-  memAboutToChange(p, pIn1);
   if( (pIn1->flags & MEM_Null)==0 ){
     sqlite3VdbeMemIntegerify(pIn1);
   }
@@ -1738,8 +1734,6 @@ case OP_Ge: {             /* same as TK_GE, jump, in1, in3 */
 
   pIn1 = &aMem[pOp->p1];
   pIn3 = &aMem[pOp->p3];
-  memAboutToChange(p, pIn1);
-  memAboutToChange(p, pIn3);
   flags1 = pIn1->flags;
   flags3 = pIn3->flags;
   if( (pIn1->flags | pIn3->flags)&MEM_Null ){
@@ -2362,7 +2356,6 @@ case OP_Affinity: {
   while( (cAff = *(zAffinity++))!=0 ){
     assert( pIn1 <= &p->aMem[p->nMem] );
     assert( memIsValid(pIn1) );
-    memAboutToChange(p, pIn1);
     ExpandBlob(pIn1);
     applyAffinity(pIn1, cAff, encoding);
     pIn1++;
@@ -2440,7 +2433,6 @@ case OP_MakeRecord: {
   for(pRec=pData0; pRec<=pLast; pRec++){
     assert( memIsValid(pRec) );
     if( zAffinity ){
-      memAboutToChange(p, pRec);
       applyAffinity(pRec, zAffinity[pRec-pData0], encoding);
     }
     if( pRec->flags&MEM_Zero && pRec->n>0 ){