|
1 | | ---- orig/shell.c 2019-06-11 15:05:36.341739007 -0700 |
2 | | -+++ shell.c 2019-06-11 15:05:36.401739332 -0700 |
3 | | -@@ -87,6 +87,12 @@ |
| 1 | +--- orig/shell.c 2020-07-09 13:55:18.598783417 +0100 |
| 2 | ++++ shell.c 2020-10-06 00:01:10.631859326 +0100 |
| 3 | +@@ -95,6 +95,11 @@ |
4 | 4 | #endif |
5 | 5 | #include <ctype.h> |
6 | 6 | #include <stdarg.h> |
7 | 7 | +// Begin Android Add |
8 | 8 | +#ifndef NO_ANDROID_FUNCS |
9 | | -+#include <aicu/AIcu.h> |
10 | 9 | +#include <sqlite3_android.h> |
11 | 10 | +#endif |
12 | 11 | +// End Android Add |
13 | 12 |
|
14 | 13 | #if !defined(_WIN32) && !defined(WIN32) |
15 | 14 | # include <signal.h> |
16 | | -@@ -11698,6 +11704,23 @@ |
| 15 | +@@ -12957,6 +12962,22 @@ |
17 | 16 | sqlite3_create_function(p->db, "edit", 2, SQLITE_UTF8, 0, |
18 | 17 | editFunc, 0, 0); |
19 | 18 | #endif |
20 | 19 | + |
21 | 20 | +// Begin Android Add |
22 | 21 | +#ifndef NO_ANDROID_FUNCS |
23 | | -+ AIcu_initializeIcuOrDie(); |
24 | 22 | + int err = register_localized_collators(p->db, "en_US", 0); |
25 | 23 | + if (err != SQLITE_OK) { |
26 | 24 | + fprintf(stderr, "register_localized_collators() failed\n"); |
|
37 | 35 | if( p->openMode==SHELL_OPEN_ZIPFILE ){ |
38 | 36 | char *zSql = sqlite3_mprintf( |
39 | 37 | "CREATE VIRTUAL TABLE zip USING zipfile(%Q);", p->zDbFilename); |
40 | | ---- orig/sqlite3.c 2019-06-11 15:05:36.393739289 -0700 |
41 | | -+++ sqlite3.c 2019-06-11 15:05:36.449739593 -0700 |
42 | | -@@ -32438,6 +32438,10 @@ |
| 38 | +--- orig/sqlite3.c 2020-07-09 13:55:18.706784068 +0100 |
| 39 | ++++ sqlite3.c 2020-07-09 13:55:18.814784719 +0100 |
| 40 | +@@ -33395,6 +33395,10 @@ |
43 | 41 | # include <sys/mount.h> |
44 | 42 | #endif |
45 | 43 |
|
|
50 | 48 | #ifdef HAVE_UTIME |
51 | 49 | # include <utime.h> |
52 | 50 | #endif |
53 | | -@@ -33197,6 +33201,12 @@ |
| 51 | +@@ -34155,6 +34159,12 @@ |
54 | 52 | #if defined(FD_CLOEXEC) && (!defined(O_CLOEXEC) || O_CLOEXEC==0) |
55 | 53 | osFcntl(fd, F_SETFD, osFcntl(fd, F_GETFD, 0) | FD_CLOEXEC); |
56 | 54 | #endif |
|
63 | 61 | } |
64 | 62 | return fd; |
65 | 63 | } |
66 | | -@@ -33777,7 +33787,13 @@ |
| 64 | +@@ -34735,7 +34745,13 @@ |
67 | 65 | ** and move on. |
68 | 66 | */ |
69 | 67 | static void robust_close(unixFile *pFile, int h, int lineno){ |
|
77 | 75 | unixLogErrorAtLine(SQLITE_IOERR_CLOSE, "close", |
78 | 76 | pFile ? pFile->zPath : 0, lineno); |
79 | 77 | } |
80 | | -@@ -36310,7 +36326,7 @@ |
| 78 | +@@ -37269,7 +37285,7 @@ |
81 | 79 | SimulateIOError( rc=1 ); |
82 | 80 | if( rc!=0 ){ |
83 | 81 | storeLastErrno((unixFile*)id, errno); |
|
86 | 84 | } |
87 | 85 | *pSize = buf.st_size; |
88 | 86 |
|
89 | | -@@ -36346,7 +36362,7 @@ |
| 87 | +@@ -37305,7 +37321,7 @@ |
90 | 88 | struct stat buf; /* Used to hold return values of fstat() */ |
91 | 89 |
|
92 | 90 | if( osFstat(pFile->h, &buf) ){ |
|
95 | 93 | } |
96 | 94 |
|
97 | 95 | nSize = ((nByte+pFile->szChunk-1) / pFile->szChunk) * pFile->szChunk; |
98 | | -@@ -37032,7 +37048,7 @@ |
| 96 | +@@ -38000,7 +38016,7 @@ |
99 | 97 | ** with the same permissions. |
100 | 98 | */ |
101 | 99 | if( osFstat(pDbFd->h, &sStat) ){ |
|
104 | 102 | goto shm_open_err; |
105 | 103 | } |
106 | 104 |
|
107 | | -@@ -123984,7 +124000,7 @@ |
| 105 | +@@ -128218,7 +128234,7 @@ |
108 | 106 | } |
109 | 107 | if( pDb->pSchema->file_format>SQLITE_MAX_FILE_FORMAT ){ |
110 | 108 | sqlite3SetString(pzErrMsg, db, "unsupported file format"); |
|
113 | 111 | goto initone_error_out; |
114 | 112 | } |
115 | 113 |
|
116 | | -@@ -164271,13 +164287,25 @@ |
| 114 | +@@ -170128,13 +170144,25 @@ |
117 | 115 | ** module with sqlite. |
118 | 116 | */ |
119 | 117 | if( SQLITE_OK==rc |
|
0 commit comments