Save a few bytes in utf.c. (CVS 1981)
FossilOrigin-Name: 8154d545e8ae3d22490b49ce4f327605883accaa
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
C Optimizations\sto\svdbeaux.c\sand\sprintf.c\s(CVS\s1980)
|
||||
D 2004-09-24T22:32:31
|
||||
C Save\sa\sfew\sbytes\sin\sutf.c.\s(CVS\s1981)
|
||||
D 2004-09-24T23:20:52
|
||||
F Makefile.in abdeb5bd9d017822691884935c320037c33f6ee6
|
||||
F Makefile.linux-gcc a9e5a0d309fa7c38e7c14d3ecf7690879d3a5457
|
||||
F README f1de682fbbd94899d50aca13d387d1b3fd3be2dd
|
||||
@@ -71,7 +71,7 @@ F src/test5.c b001fa7f1b9e2dc5c2331de62fc641b5ab2bd7a1
|
||||
F src/tokenize.c 418ef7ba1149603a30dcf0057e04a3ea0e99edbe
|
||||
F src/trigger.c d1f770ee37a80391dd6d0948ee821b0272f99ae7
|
||||
F src/update.c 7157084216c4b02a23cdb23eb6d246aa9034fa4d
|
||||
F src/utf.c 328890099db492dda5620ee5f924e244c6e57ff7
|
||||
F src/utf.c f4f83acd73389090e32d6589d307fc55d794c7ed
|
||||
F src/util.c f9b661a3b80a1469777771776a59a5f0e2f193fc
|
||||
F src/vacuum.c 257de36230cb988842f66eb08dc6c0250b8e05f3
|
||||
F src/vdbe.c 0542852785220807feb02b9dee1150ac2e592c8d
|
||||
@@ -247,7 +247,7 @@ F www/tclsqlite.tcl 560ecd6a916b320e59f2917317398f3d59b7cc25
|
||||
F www/vdbe.tcl 59288db1ac5c0616296b26dce071c36cb611dfe9
|
||||
F www/version3.tcl 092a01f5ef430d2c4acc0ae558d74c4bb89638a0
|
||||
F www/whentouse.tcl a8335bce47cc2fddb07f19052cb0cb4d9129a8e4
|
||||
P bdc3bb070f7f29713b7bb9a6454a7ecbee6cf36d
|
||||
R 07e2fbac83a5f125e4876d6fcf9bf7e8
|
||||
P eabc77c99b3e78b4c620a1736d9acfa6cb1e7b67
|
||||
R c07c37cfeb3c8a36c1a7b9c5d319b905
|
||||
U drh
|
||||
Z 242bf20dc4f04b5461b10f0143a31a44
|
||||
Z b991617d4e2790fa5a311f1ff33d427d
|
||||
|
||||
+1
-1
@@ -1 +1 @@
|
||||
eabc77c99b3e78b4c620a1736d9acfa6cb1e7b67
|
||||
8154d545e8ae3d22490b49ce4f327605883accaa
|
||||
@@ -12,7 +12,7 @@
|
||||
** This file contains routines used to translate between UTF-8,
|
||||
** UTF-16, UTF-16BE, and UTF-16LE.
|
||||
**
|
||||
** $Id: utf.c,v 1.28 2004/08/31 00:52:37 drh Exp $
|
||||
** $Id: utf.c,v 1.29 2004/09/24 23:20:52 drh Exp $
|
||||
**
|
||||
** Notes on UTF-8:
|
||||
**
|
||||
@@ -324,17 +324,16 @@ int sqlite3VdbeMemTranslate(Mem *pMem, u8 desiredEnc){
|
||||
READ_UTF8(zIn, c);
|
||||
WRITE_UTF16LE(z, c);
|
||||
}
|
||||
WRITE_UTF16LE(z, 0);
|
||||
pMem->n = (z-zOut)-2;
|
||||
}else if( desiredEnc==SQLITE_UTF16BE ){
|
||||
}else{
|
||||
assert( desiredEnc==SQLITE_UTF16BE );
|
||||
/* UTF-8 -> UTF-16 Big-endian */
|
||||
while( zIn<zTerm ){
|
||||
READ_UTF8(zIn, c);
|
||||
WRITE_UTF16BE(z, c);
|
||||
}
|
||||
WRITE_UTF16BE(z, 0);
|
||||
pMem->n = (z-zOut)-2;
|
||||
}
|
||||
pMem->n = z - zOut;
|
||||
*z++ = 0;
|
||||
}else{
|
||||
assert( desiredEnc==SQLITE_UTF8 );
|
||||
if( pMem->enc==SQLITE_UTF16LE ){
|
||||
@@ -343,18 +342,16 @@ int sqlite3VdbeMemTranslate(Mem *pMem, u8 desiredEnc){
|
||||
READ_UTF16LE(zIn, c);
|
||||
WRITE_UTF8(z, c);
|
||||
}
|
||||
WRITE_UTF8(z, 0);
|
||||
pMem->n = (z-zOut)-1;
|
||||
}else{
|
||||
/* UTF-16 Little-endian -> UTF-8 */
|
||||
while( zIn<zTerm ){
|
||||
READ_UTF16BE(zIn, c);
|
||||
WRITE_UTF8(z, c);
|
||||
}
|
||||
WRITE_UTF8(z, 0);
|
||||
pMem->n = (z-zOut)-1;
|
||||
}
|
||||
pMem->n = z - zOut;
|
||||
}
|
||||
*z = 0;
|
||||
assert( (pMem->n+(desiredEnc==SQLITE_UTF8?1:2))<=len );
|
||||
|
||||
sqlite3VdbeMemRelease(pMem);
|
||||
|
||||
Reference in New Issue
Block a user