Index: third_party/sqlite/sqlite-src-3070603/ext/fts2/fts2_icu.c |
diff --git a/third_party/sqlite/src/ext/fts2/fts2_icu.c b/third_party/sqlite/sqlite-src-3070603/ext/fts2/fts2_icu.c |
similarity index 96% |
copy from third_party/sqlite/src/ext/fts2/fts2_icu.c |
copy to third_party/sqlite/sqlite-src-3070603/ext/fts2/fts2_icu.c |
index a8b835962f91d3610ed82d37062c427693e03b84..de8e116bb906c59ef5352f6b39973399427621d1 100644 |
--- a/third_party/sqlite/src/ext/fts2/fts2_icu.c |
+++ b/third_party/sqlite/sqlite-src-3070603/ext/fts2/fts2_icu.c |
@@ -118,15 +118,15 @@ static int icuOpen( |
nChar = nInput+1; |
pCsr = (IcuCursor *)sqlite3_malloc( |
sizeof(IcuCursor) + /* IcuCursor */ |
- (nChar+1) * sizeof(int) + /* IcuCursor.aOffset[] */ |
- nChar * sizeof(UChar) /* IcuCursor.aChar[] */ |
+ nChar * sizeof(UChar) + /* IcuCursor.aChar[] */ |
+ (nChar+1) * sizeof(int) /* IcuCursor.aOffset[] */ |
); |
if( !pCsr ){ |
return SQLITE_NOMEM; |
} |
memset(pCsr, 0, sizeof(IcuCursor)); |
- pCsr->aOffset = (int *)&pCsr[1]; |
- pCsr->aChar = (UChar *)&pCsr->aOffset[nChar+1]; |
+ pCsr->aChar = (UChar *)&pCsr[1]; |
+ pCsr->aOffset = (int *)&pCsr->aChar[nChar]; |
pCsr->aOffset[iOut] = iInput; |
U8_NEXT(zInput, iInput, nInput, c); |
@@ -198,7 +198,7 @@ static int icuNext( |
while( iStart<iEnd ){ |
int iWhite = iStart; |
- U16_NEXT(pCsr->aChar, iWhite, pCsr->nChar, c); |
+ U8_NEXT(pCsr->aChar, iWhite, pCsr->nChar, c); |
if( u_isspace(c) ){ |
iStart = iWhite; |
}else{ |