]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Use memcpy() rather than "=" to copy a structure, in order to work around
authordrh <drh@noemail.net>
Wed, 10 Dec 2008 11:49:06 +0000 (11:49 +0000)
committerdrh <drh@noemail.net>
Wed, 10 Dec 2008 11:49:06 +0000 (11:49 +0000)
a bug in the XLC compiler on AIX.  Ticket #3344. (CVS 6003)

FossilOrigin-Name: 18bbcafc16bb985a7c74e07ffb9c4f28273a7cfd

manifest
manifest.uuid
src/vdbemem.c

index cdb52c6647fc2596df1245633b46128f37c5f511..648d7be4c350c0e83c76158ed5f9b9f331127655 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Remove\ssome\sobsolete\smarkup\sfrom\ssqlite.h.in.\s(CVS\s6002)
-D 2008-12-10T11:44:30
+C Use\smemcpy()\srather\sthan\s"="\sto\scopy\sa\sstructure,\sin\sorder\sto\swork\saround\na\sbug\sin\sthe\sXLC\scompiler\son\sAIX.\s\sTicket\s#3344.\s(CVS\s6003)
+D 2008-12-10T11:49:06
 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
 F Makefile.in f7e4c81c347b04f7b0f1c1b081a168645d7b8af7
 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
@@ -200,7 +200,7 @@ F src/vdbeInt.h e6e80a99ce634983b7cc2498843b4d2e5540900a
 F src/vdbeapi.c 20722164e7701a0747eaea03cddbbe0de5cb37bf
 F src/vdbeaux.c bdf1b3cdf97692eedd4ab4d60510531ab3019683
 F src/vdbeblob.c b0dcebfafedcf9c0addc7901ad98f6f986c08935
-F src/vdbemem.c 4f45d0f86804ffeb7f177e371d75ac2393ee9172
+F src/vdbemem.c 15dc139e0b9e328e63971e02a7552e8da73b16e8
 F src/vtab.c 02c51eac45dbff1a1d6e73f58febf92ecb563f7f
 F src/walker.c 488c2660e13224ff70c0c82761118efb547f8f0d
 F src/where.c c5a21be6d5705d1c2c6f5d56a97785e4752791d2
@@ -664,7 +664,7 @@ F tool/speedtest16.c c8a9c793df96db7e4933f0852abb7a03d48f2e81
 F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
 F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
-P 228ebe4115cfb2deafd504a52a230bf646fcd8f1
-R 7c1a07b82dea099cdd5a50467294f97c
+P d1d05e2a8a6e474e4921742ba055200d7f4d21ce
+R 3cb1e54e772a65be57b4db65ef2876e3
 U drh
-Z e78d9ac45abf0ead5f64aa5a8530178b
+Z 967f0ee55c615c78cea9e570be2fe2d2
index 51a1b1517a5807dc56fab7156f854f938cb353b0..80d70010ef23053e4dd1410ed85b3a49e3e0d2b4 100644 (file)
@@ -1 +1 @@
-d1d05e2a8a6e474e4921742ba055200d7f4d21ce
\ No newline at end of file
+18bbcafc16bb985a7c74e07ffb9c4f28273a7cfd
\ No newline at end of file
index aa746cb19cc9d9ad3682f5a8e3a93899f680b904..4f9a9cff25a98fe4b26150a9e4f91425906adaa8 100644 (file)
@@ -15,7 +15,7 @@
 ** only within the VDBE.  Interface routines refer to a Mem using the
 ** name sqlite_value
 **
-** $Id: vdbemem.c,v 1.130 2008/12/09 02:51:24 drh Exp $
+** $Id: vdbemem.c,v 1.131 2008/12/10 11:49:06 drh Exp $
 */
 #include "sqliteInt.h"
 #include <ctype.h>
@@ -255,7 +255,7 @@ int sqlite3VdbeMemFinalize(Mem *pMem, FuncDef *pFunc){
     pFunc->xFinalize(&ctx);
     assert( 0==(pMem->flags&MEM_Dyn) && !pMem->xDel );
     sqlite3DbFree(pMem->db, pMem->zMalloc);
-    *pMem = ctx.s;
+    memcpy(pMem, &ctx.s, sizeof(ctx.s));
     rc = (ctx.isError?SQLITE_ERROR:SQLITE_OK);
   }
   return rc;