/ Changes On Branch compiler-compat
Login

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

Changes In Branch compiler-compat Excluding Merge-Ins

This is equivalent to a diff from 0c2fb18d25 to 21266c68af

2012-06-21
14:05
Merge several compiler compatibility fixes to trunk. (check-in: d3d491a546 user: mistachkin tags: trunk)
2012-06-18
20:52
Fix a problem with identifying white-space characters outside of the ascii range in the ICU tokenizer. (check-in: 892b74116a user: dan tags: trunk)
17:15
Allow the SQLITE_API macro to apply to the sqlite3_win32_sleep function. (Closed-Leaf check-in: 21266c68af user: mistachkin tags: compiler-compat)
14:23
Add the ieee754() SQL function that interprets a blob as a big-endian double. Arrange for the quote() SQL function to emit ieee754() functions in its output so that floating-point values in the database are exactly preserved by a ".dump" command in the shell. (Closed-Leaf check-in: 87597e988f user: drh tags: ieee754-func)
08:00
Fix a few compilation issues that can occur with certain compilers (e.g. GCC 2.95.3, MSVC). (check-in: f970a3de61 user: mistachkin tags: compiler-compat)
2012-06-16
15:26
In Lemon, when comparing the output to the *.h file to see if it has changed, make sure that the proposed new output and the preexisting output are the same size before deciding that they are the same. (check-in: 0c2fb18d25 user: drh tags: trunk)
2012-06-11
02:05
Version 3.7.13 (check-in: f5b5a13f73 user: drh tags: trunk, release, version-3.7.13)

Changes to ext/fts3/fts3_unicode2.c.

142
143
144
145
146
147
148
149

150
151
152
153
154
155
156
142
143
144
145
146
147
148

149
150
151
152
153
154
155
156







-
+







        iLo = iTest+1;
      }else{
        iHi = iTest-1;
      }
    }
    assert( aEntry[0]<key );
    assert( key>=aEntry[iRes] );
    return (c >= ((aEntry[iRes]>>10) + (aEntry[iRes]&0x3FF)));
    return (((unsigned int)c) >= ((aEntry[iRes]>>10) + (aEntry[iRes]&0x3FF)));
  }
  return 1;
}


/*
** If the argument is a codepoint corresponding to a lowercase letter

Changes to src/mutex_w32.c.

105
106
107
108
109
110
111
112

113
114
115
116
117
118
119
105
106
107
108
109
110
111

112
113
114
115
116
117
118
119







-
+







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

extern void sqlite3_win32_sleep(DWORD milliseconds); /* 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 ){
    int i;
    for(i=0; i<ArraySize(winMutex_staticMutexes); i++){
#if SQLITE_OS_WINRT

Changes to src/shell.c.

2693
2694
2695
2696
2697
2698
2699

2700
2701
2702
2703





2704
2705
2706
2707
2708
2709
2710
2693
2694
2695
2696
2697
2698
2699
2700




2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712







+
-
-
-
-
+
+
+
+
+







** 0 return indicates an error of some kind.
*/
static char *find_home_dir(void){
  static char *home_dir = NULL;
  if( home_dir ) return home_dir;

#if !defined(_WIN32) && !defined(WIN32) && !defined(__OS2__) && !defined(_WIN32_WCE) && !defined(__RTP__) && !defined(_WRS_KERNEL)
  {
  struct passwd *pwent;
  uid_t uid = getuid();
  if( (pwent=getpwuid(uid)) != NULL) {
    home_dir = pwent->pw_dir;
    struct passwd *pwent;
    uid_t uid = getuid();
    if( (pwent=getpwuid(uid)) != NULL) {
      home_dir = pwent->pw_dir;
    }
  }
#endif

#if defined(_WIN32_WCE)
  /* Windows CE (arm-wince-mingw32ce-gcc) does not provide getenv()
   */
  home_dir = "/";