]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Update several APIs to enable compilation with newer revisions of WinRT.
authormistachkin <mistachkin@noemail.net>
Thu, 31 May 2012 22:12:26 +0000 (22:12 +0000)
committermistachkin <mistachkin@noemail.net>
Thu, 31 May 2012 22:12:26 +0000 (22:12 +0000)
FossilOrigin-Name: 54de739f056749b53b198f6b074d9e649520cf00

manifest
manifest.uuid
src/os_win.c

index fb96fe17d46eec7fa60010c51cf0a2e752ce1922..ef63fa7d0644b2eb96ce857646093bd27bd44c55 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Use\sthe\snew\stest\ssuite\shelper\sprocedure\s'get_pwd'\sto\squery\sthe\scurrent\sdirectory\sfrom\stests.
-D 2012-05-22T19:25:51.250
+C Update\sseveral\sAPIs\sto\senable\scompilation\swith\snewer\srevisions\sof\sWinRT.
+D 2012-05-31T22:12:26.763
 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
 F Makefile.in 2f37e468503dbe79d35c9f6dffcf3fae1ae9ec20
 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@ -160,7 +160,7 @@ F src/os.h 38aabd5e3ecd4162332076f55bb09cec02165cca
 F src/os_common.h 92815ed65f805560b66166e3583470ff94478f04
 F src/os_os2.c 4a75888ba3dfc820ad5e8177025972d74d7f2440
 F src/os_unix.c 424d46e0edab969293c2223f09923b2178171f47
-F src/os_win.c 37e1b92f0fa5edf1955bcd6b04d3e4d8be68ede2
+F src/os_win.c ce6b415a2efd30027d4881bc8266c90ed4bc3ad0
 F src/pager.c bb5635dde0b152797836d1c72275284724bb563c
 F src/pager.h ef1eaf8593e78f73885c1dfac27ad83bee23bdc5
 F src/parse.y f29df90bd3adc64b33114ab1de9fb7768fcf2099
@@ -998,7 +998,7 @@ F tool/tostr.awk e75472c2f98dd76e06b8c9c1367f4ab07e122d06
 F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
 F tool/warnings-clang.sh a8a0a3babda96dfb1ff51adda3cbbf3dfb7266c2
 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381
-P b9ed0b26debd225a4530eb17d25b857e8e883a85
-R 862fc76bca700646e8a6c3acf8f2d307
+P 1dd01e408161f5c1ab6b4fd449bee147d7e00744
+R e2e31613ef8f782c24f244b69c156ce3
 U mistachkin
-Z fe4e5d83d2f708a7c0601e6c2f510bd5
+Z 408bf47646a7d2177c7080bd3b9695d2
index c164e060b82ad39ac1f2bca69f44a77951a8c488..a21151147ef6de801b974baa1e1ae7db18007ba5 100644 (file)
@@ -1 +1 @@
-1dd01e408161f5c1ab6b4fd449bee147d7e00744
\ No newline at end of file
+54de739f056749b53b198f6b074d9e649520cf00
\ No newline at end of file
index 4652304c4f0931cdbe943dc5a035f6981739cf08..376e240c75e0eb87e73f4c0db0e2fe90338b33b2 100644 (file)
@@ -288,7 +288,7 @@ static struct win_syscall {
 #define osCreateFileW ((HANDLE(WINAPI*)(LPCWSTR,DWORD,DWORD, \
         LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE))aSyscall[5].pCurrent)
 
-#if defined(SQLITE_WIN32_HAS_WIDE)
+#if !SQLITE_OS_WINRT && defined(SQLITE_WIN32_HAS_WIDE)
   { "CreateFileMappingW",      (SYSCALL)CreateFileMappingW,      0 },
 #else
   { "CreateFileMappingW",      (SYSCALL)0,                       0 },
@@ -684,7 +684,7 @@ static struct win_syscall {
 #define osWriteFile ((BOOL(WINAPI*)(HANDLE,LPCVOID,DWORD,LPDWORD, \
         LPOVERLAPPED))aSyscall[58].pCurrent)
 
-#if SQLITE_OS_WINRT
+#if !SQLITE_OS_WINCE
   { "CreateEventExW",          (SYSCALL)CreateEventExW,          0 },
 #else
   { "CreateEventExW",          (SYSCALL)0,                       0 },
@@ -720,7 +720,7 @@ static struct win_syscall {
 #define osSetFilePointerEx ((BOOL(WINAPI*)(HANDLE,LARGE_INTEGER, \
         PLARGE_INTEGER,DWORD))aSyscall[62].pCurrent)
 
-#if SQLITE_OS_WINRT
+#if !SQLITE_OS_WINCE
   { "GetFileInformationByHandleEx", (SYSCALL)GetFileInformationByHandleEx, 0 },
 #else
   { "GetFileInformationByHandleEx", (SYSCALL)0,                  0 },
@@ -729,14 +729,14 @@ static struct win_syscall {
 #define osGetFileInformationByHandleEx ((BOOL(WINAPI*)(HANDLE, \
         FILE_INFO_BY_HANDLE_CLASS,LPVOID,DWORD))aSyscall[63].pCurrent)
 
-#if !SQLITE_OS_WINCE
-  { "MapViewOfFileEx",         (SYSCALL)MapViewOfFileEx,         0 },
+#if SQLITE_OS_WINRT
+  { "MapViewOfFileFromApp",    (SYSCALL)MapViewOfFileFromApp,    0 },
 #else
-  { "MapViewOfFileEx",         (SYSCALL)0,                       0 },
+  { "MapViewOfFileFromApp",    (SYSCALL)0,                       0 },
 #endif
 
-#define osMapViewOfFileEx ((LPVOID(WINAPI*)(HANDLE,DWORD,DWORD,DWORD,SIZE_T, \
-        LPVOID))aSyscall[64].pCurrent)
+#define osMapViewOfFileFromApp ((LPVOID(WINAPI*)(HANDLE,ULONG,ULONG64, \
+        SIZE_T))aSyscall[64].pCurrent)
 
 #if SQLITE_OS_WINRT
   { "CreateFile2",             (SYSCALL)CreateFile2,             0 },
@@ -793,6 +793,15 @@ static struct win_syscall {
 
 #define osGetProcessHeap ((HANDLE(WINAPI*)(VOID))aSyscall[71].pCurrent)
 
+#if SQLITE_OS_WINRT
+  { "CreateFileMappingFromApp", (SYSCALL)CreateFileMappingFromApp, 0 },
+#else
+  { "CreateFileMappingFromApp", (SYSCALL)0,                      0 },
+#endif
+
+#define osCreateFileMappingFromApp ((HANDLE(WINAPI*)(HANDLE, \
+        LPSECURITY_ATTRIBUTES,ULONG,ULONG64,LPCWSTR))aSyscall[72].pCurrent)
+
 }; /* End of the overrideable system calls */
 
 /*
@@ -3211,9 +3220,15 @@ static int winShmMap(
       HANDLE hMap;                /* file-mapping handle */
       void *pMap = 0;             /* Mapped memory region */
      
+#if SQLITE_OS_WINRT
+      hMap = osCreateFileMappingFromApp(pShmNode->hFile.h,
+          NULL, PAGE_READWRITE, nByte, NULL
+      );
+#else
       hMap = osCreateFileMappingW(pShmNode->hFile.h, 
           NULL, PAGE_READWRITE, 0, nByte, NULL
       );
+#endif
       OSTRACE(("SHM-MAP pid-%d create region=%d nbyte=%d %s\n",
                (int)osGetCurrentProcessId(), pShmNode->nRegion, nByte,
                hMap ? "ok" : "failed"));
@@ -3221,8 +3236,8 @@ static int winShmMap(
         int iOffset = pShmNode->nRegion*szRegion;
         int iOffsetShift = iOffset % winSysInfo.dwAllocationGranularity;
 #if SQLITE_OS_WINRT
-        pMap = osMapViewOfFileEx(hMap, FILE_MAP_WRITE | FILE_MAP_READ,
-            0, iOffset - iOffsetShift, szRegion + iOffsetShift, NULL
+        pMap = osMapViewOfFileFromApp(hMap, FILE_MAP_WRITE | FILE_MAP_READ,
+            iOffset - iOffsetShift, szRegion + iOffsetShift
         );
 #else
         pMap = osMapViewOfFile(hMap, FILE_MAP_WRITE | FILE_MAP_READ,
@@ -4264,7 +4279,7 @@ int sqlite3_os_init(void){
 
   /* Double-check that the aSyscall[] array has been constructed
   ** correctly.  See ticket [bb3a86e890c8e96ab] */
-  assert( ArraySize(aSyscall)==72 );
+  assert( ArraySize(aSyscall)==73 );
 
 #ifndef SQLITE_OMIT_WAL
   /* get memory map allocation granularity */