-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
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
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
-eabc77c99b3e78b4c620a1736d9acfa6cb1e7b67
\ No newline at end of file
+8154d545e8ae3d22490b49ce4f327605883accaa
\ No newline at end of file
** 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:
**
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 ){
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);