/ Changes On Branch winCeWarn
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Changes In Branch winCeWarn Excluding Merge-Ins

This is equivalent to a diff from 13a2d90a28 to cc910b8e0c

2014-08-15
16:13
Fix compiler warnings on WinCE. (check-in: 28a379fcd4 user: drh tags: trunk)
2014-08-14
19:53
Fix an assert that can fail if the database file is corrupted. (check-in: 3f45b8192d user: dan tags: trunk)
18:31
Fix compiler warnings on WinCE. (Closed-Leaf check-in: cc910b8e0c user: mistachkin tags: winCeWarn)
14:02
Merge the pre-3.8.6 changes into the threads branch. (check-in: a608fd1d52 user: drh tags: threads)
13:39
Merge the pre-3.8.6 changes from trunk into the apple-osx branch. (check-in: 08058df3af user: drh tags: apple-osx)
13:06
Fix typos in comments used to help generate documentation. No changes to code. (check-in: 13a2d90a28 user: drh tags: trunk)
02:59
Add icon to the Windows shell executable. This is a resource change only, no changes to code. (check-in: f5cce9db10 user: mistachkin tags: trunk)

Changes to src/mutex_w32.c.

95
96
97
98
99
100
101
102

103
104
105
106
107
108
109
95
96
97
98
99
100
101

102
103
104
105
106
107
108
109







-
+







static int winMutex_isInit = 0;
static int winMutex_isNt = -1; /* <0 means "need to query" */

/* As the winMutexInit() and winMutexEnd() functions are called as part
** of the sqlite3_initialize() and sqlite3_shutdown() processing, the
** "interlocked" magic used here is probably not strictly necessary.
*/
static LONG volatile winMutex_lock = 0;
static LONG SQLITE_WIN32_VOLATILE winMutex_lock = 0;

int sqlite3_win32_is_nt(void); /* os_win.c */
void sqlite3_win32_sleep(DWORD milliseconds); /* os_win.c */

static int winMutexInit(void){
  /* The first to increment to 1 does actual initialization */
  if( InterlockedCompareExchange(&winMutex_lock, 1, 0)==0 ){

Changes to src/os_win.c.

406
407
408
409
410
411
412
413

414
415

416
417
418
419
420
421
422
406
407
408
409
410
411
412

413
414

415
416
417
418
419
420
421
422







-
+

-
+







** 1:   Operating system is Win9x.
** 2:   Operating system is WinNT.
**
** In order to facilitate testing on a WinNT system, the test fixture
** can manually set this value to 1 to emulate Win98 behavior.
*/
#ifdef SQLITE_TEST
LONG volatile sqlite3_os_type = 0;
LONG SQLITE_WIN32_VOLATILE sqlite3_os_type = 0;
#else
static LONG volatile sqlite3_os_type = 0;
static LONG SQLITE_WIN32_VOLATILE sqlite3_os_type = 0;
#endif

#ifndef SYSCALL
#  define SYSCALL sqlite3_syscall_ptr
#endif

/*
1051
1052
1053
1054
1055
1056
1057
1058
1059


1060
1061
1062
1063
1064
1065
1066
1051
1052
1053
1054
1055
1056
1057


1058
1059
1060
1061
1062
1063
1064
1065
1066







-
-
+
+







#if defined(InterlockedCompareExchange)
  { "InterlockedCompareExchange", (SYSCALL)0,                    0 },

#define osInterlockedCompareExchange InterlockedCompareExchange
#else
  { "InterlockedCompareExchange", (SYSCALL)InterlockedCompareExchange, 0 },

#define osInterlockedCompareExchange ((LONG(WINAPI*)(LONG volatile*, \
        LONG,LONG))aSyscall[76].pCurrent)
#define osInterlockedCompareExchange ((LONG(WINAPI*)(LONG \
        SQLITE_WIN32_VOLATILE*, LONG,LONG))aSyscall[76].pCurrent)
#endif /* defined(InterlockedCompareExchange) */

}; /* End of the overrideable system calls */

/*
** This is the xSetSystemCall() method of sqlite3_vfs for all of the
** "win32" VFSes.  Return SQLITE_OK opon successfully updating the

Changes to src/os_win.h.

60
61
62
63
64
65
66










67
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77







+
+
+
+
+
+
+
+
+
+

** Determine if we are dealing with WinRT, which provides only a subset of
** the full Win32 API.
*/
#if !defined(SQLITE_OS_WINRT)
# define SQLITE_OS_WINRT 0
#endif

/*
** For WinCE, some API function parameters do not appear to be declared as
** volatile.
*/
#if SQLITE_OS_WINCE
# define SQLITE_WIN32_VOLATILE
#else
# define SQLITE_WIN32_VOLATILE volatile
#endif

#endif /* _OS_WIN_H_ */