]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fix an alignment problem in test_async.c. (CVS 4840)
authordrh <drh@noemail.net>
Fri, 7 Mar 2008 21:04:02 +0000 (21:04 +0000)
committerdrh <drh@noemail.net>
Fri, 7 Mar 2008 21:04:02 +0000 (21:04 +0000)
FossilOrigin-Name: 752d8e21bb250d7df58a3abc945fcd7a3b38ad15

manifest
manifest.uuid
src/test_async.c

index 11b3eef74a523b60c613575b057e019d5488e6b7..88578d75bd07bee37e1ab48ea2cd5264d4ca0fdb 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Another\sfix\sto\sthe\sOsUnlock\sI/O\serror\slogic.\s(CVS\s4839)
-D 2008-03-07T20:14:39
+C Fix\san\salignment\sproblem\sin\stest_async.c.\s(CVS\s4840)
+D 2008-03-07T21:04:02
 F Makefile.arm-wince-mingw32ce-gcc ac5f7b2cef0cd850d6f755ba6ee4ab961b1fadf7
 F Makefile.in d521464011d6965bbda1b699f1850c6e33141c73
 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
@@ -154,7 +154,7 @@ F src/test6.c f8b34a6ff04937092327798ddf0ab46863535bc5
 F src/test7.c acec2256c7c2d279db5a8b5fa1a2a68fcc942c67
 F src/test8.c 25e127f0e21f59da24fa33cdbc645851cfb933f1
 F src/test9.c 4615ef08750245a2d96aaa7cbe2fb4aff2b57acc
-F src/test_async.c 5f21392d66869a4c87dc9153e40d0dc0e085261f
+F src/test_async.c 3147c64c34721f088d5ab20f85dabd5d7732c007
 F src/test_autoext.c 855157d97aa28cf84233847548bfacda21807436
 F src/test_btree.c c1308ba0b88ab577fa56c9e493a09829dfcded9c
 F src/test_config.c 9223ff4a7b8b97c9d12965b0123db1cbd6757efb
@@ -623,7 +623,7 @@ F www/tclsqlite.tcl 8be95ee6dba05eabcd27a9d91331c803f2ce2130
 F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
 F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b
 F www/whentouse.tcl fc46eae081251c3c181bd79c5faef8195d7991a5
-P b4c1258edb4a40501d13c9da674d0366d5a8c694
-R 298c7b7df0446685a75fea13d6a4378a
+P 22bd537ee2af6779ecb38502513ae533f85f7c2e
+R 3b613a4e5d518502eb16045917016772
 U drh
-Z 7417e691146a77b72d5f4d9f4e297416
+Z 70fa27f643cacfbef43393a47b3e31b3
index ec9a3eaa06aba981cfd2cf15c842af16ebdedcb0..e4eee42a3744512937345a55e4c600b45820d711 100644 (file)
@@ -1 +1 @@
-22bd537ee2af6779ecb38502513ae533f85f7c2e
\ No newline at end of file
+752d8e21bb250d7df58a3abc945fcd7a3b38ad15
\ No newline at end of file
index 3f2c579664a6767cc9dd6f0827c1fee7d5e5973f..18dd21e668119a11cbd6ffa44ed37da0cc1cdcc3 100644 (file)
@@ -1011,6 +1011,7 @@ static int asyncOpen(
   int nByte;
   AsyncFileData *pData;
   AsyncLock *pLock = 0;
+  char *z;
   int isExclusive = (flags&SQLITE_OPEN_EXCLUSIVE);
 
   nByte = (
@@ -1018,15 +1019,19 @@ static int asyncOpen(
     2 * pVfs->szOsFile +           /* AsyncFileData.pBaseRead and pBaseWrite */
     nName                          /* AsyncFileData.zName */
   ); 
-  pData = sqlite3_malloc(nByte);
-  if( !pData ){
+  z = sqlite3_malloc(nByte);
+  if( !z ){
     return SQLITE_NOMEM;
   }
-  memset(pData, 0, nByte);
-  pData->zName = (char *)&pData[1];
+  memset(z, 0, nByte);
+  pData = (AsyncFileData*)z;
+  z += sizeof(pData[0]);
+  pData->pBaseRead = (sqlite3_file*)z;
+  z += pVfs->szOsFile;
+  pData->pBaseWrite = (sqlite3_file*)z;
+  z += pVfs->szOsFile;
+  pData->zName = z;
   pData->nName = nName;
-  pData->pBaseRead = (sqlite3_file *)&pData->zName[nName];
-  pData->pBaseWrite = (sqlite3_file *)&pData->zName[nName+pVfs->szOsFile];
   pData->close.pFileData = pData;
   pData->close.op = ASYNC_CLOSE;
   memcpy(pData->zName, zName, nName);