OLD | NEW |
| (Empty) |
1 diff --git ext/fts2/fts2_icu.c ext/fts2/fts2_icu.c | |
2 index 6b9687e..a8b8359 100644 | |
3 --- ext/fts2/fts2_icu.c | |
4 +++ ext/fts2/fts2_icu.c | |
5 @@ -118,15 +118,15 @@ static int icuOpen( | |
6 nChar = nInput+1; | |
7 pCsr = (IcuCursor *)sqlite3_malloc( | |
8 sizeof(IcuCursor) + /* IcuCursor */ | |
9 - nChar * sizeof(UChar) + /* IcuCursor.aChar[] */ | |
10 - (nChar+1) * sizeof(int) /* IcuCursor.aOffset[] */ | |
11 + (nChar+1) * sizeof(int) + /* IcuCursor.aOffset[] */ | |
12 + nChar * sizeof(UChar) /* IcuCursor.aChar[] */ | |
13 ); | |
14 if( !pCsr ){ | |
15 return SQLITE_NOMEM; | |
16 } | |
17 memset(pCsr, 0, sizeof(IcuCursor)); | |
18 - pCsr->aChar = (UChar *)&pCsr[1]; | |
19 - pCsr->aOffset = (int *)&pCsr->aChar[nChar]; | |
20 + pCsr->aOffset = (int *)&pCsr[1]; | |
21 + pCsr->aChar = (UChar *)&pCsr->aOffset[nChar+1]; | |
22 | |
23 pCsr->aOffset[iOut] = iInput; | |
24 U8_NEXT(zInput, iInput, nInput, c); | |
25 diff --git ext/fts3/fts3_icu.c ext/fts3/fts3_icu.c | |
26 index a75b14a..e406168 100644 | |
27 --- ext/fts3/fts3_icu.c | |
28 +++ ext/fts3/fts3_icu.c | |
29 @@ -118,15 +118,15 @@ static int icuOpen( | |
30 nChar = nInput+1; | |
31 pCsr = (IcuCursor *)sqlite3_malloc( | |
32 sizeof(IcuCursor) + /* IcuCursor */ | |
33 - nChar * sizeof(UChar) + /* IcuCursor.aChar[] */ | |
34 - (nChar+1) * sizeof(int) /* IcuCursor.aOffset[] */ | |
35 + (nChar+1) * sizeof(int) + /* IcuCursor.aOffset[] */ | |
36 + nChar * sizeof(UChar) /* IcuCursor.aChar[] */ | |
37 ); | |
38 if( !pCsr ){ | |
39 return SQLITE_NOMEM; | |
40 } | |
41 memset(pCsr, 0, sizeof(IcuCursor)); | |
42 - pCsr->aChar = (UChar *)&pCsr[1]; | |
43 - pCsr->aOffset = (int *)&pCsr->aChar[nChar]; | |
44 + pCsr->aOffset = (int *)&pCsr[1]; | |
45 + pCsr->aChar = (UChar *)&pCsr->aOffset[nChar+1]; | |
46 | |
47 pCsr->aOffset[iOut] = iInput; | |
48 U8_NEXT(zInput, iInput, nInput, c); | |
OLD | NEW |