Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Make sure the result of a user-defined function uses the text encoding of the database. (CVS 1670) |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
d333ac8002feff9423e286369e5ae5a6 |
User & Date: | drh 2004-06-22 17:59:56.000 |
Context
2004-06-22
| ||
22:04 | Be careful to initialize the Mem.xDel field to zero for static Mems. (CVS 1671) (check-in: e17ea666b1 user: drh tags: trunk) | |
17:59 | Make sure the result of a user-defined function uses the text encoding of the database. (CVS 1670) (check-in: d333ac8002 user: drh tags: trunk) | |
14:59 | Version 3.0.1 ALPHA (CVS 1669) (check-in: ac6683e380 user: drh tags: trunk) | |
Changes
Changes to src/vdbe.c.
︙ | ︙ | |||
39 40 41 42 43 44 45 | ** ** Various scripts scan this source file in order to generate HTML ** documentation, headers files, or other derived files. The formatting ** of the code in this file is, therefore, important. See other comments ** in this file for details. If in doubt, do not deviate from existing ** commenting and indentation practices when changing or adding code. ** | | | 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | ** ** Various scripts scan this source file in order to generate HTML ** documentation, headers files, or other derived files. The formatting ** of the code in this file is, therefore, important. See other comments ** in this file for details. If in doubt, do not deviate from existing ** commenting and indentation practices when changing or adding code. ** ** $Id: vdbe.c,v 1.387 2004/06/22 17:59:56 drh Exp $ */ #include "sqliteInt.h" #include "os.h" #include <ctype.h> #include "vdbeInt.h" /* |
︙ | ︙ | |||
1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 | sqlite3VdbeDeleteAuxData(ctx.pVdbeFunc, pOp->p2); pOp->p3 = (char *)ctx.pVdbeFunc; pOp->p3type = P3_VDBEFUNC; } /* Copy the result of the function to the top of the stack */ pTos++; *pTos = ctx.s; if( pTos->flags & MEM_Short ){ pTos->z = pTos->zShort; } /* If the function returned an error, throw an exception */ if( ctx.isError ){ sqlite3SetString(&p->zErrMsg, | > | 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 | sqlite3VdbeDeleteAuxData(ctx.pVdbeFunc, pOp->p2); pOp->p3 = (char *)ctx.pVdbeFunc; pOp->p3type = P3_VDBEFUNC; } /* Copy the result of the function to the top of the stack */ pTos++; sqlite3VdbeChangeEncoding(&ctx.s, db->enc); *pTos = ctx.s; if( pTos->flags & MEM_Short ){ pTos->z = pTos->zShort; } /* If the function returned an error, throw an exception */ if( ctx.isError ){ sqlite3SetString(&p->zErrMsg, |
︙ | ︙ |
Added test/enc3.test.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | # 2002 May 24 # # The author disclaims copyright to this source code. In place of # a legal notice, here is a blessing: # # May you do good and not evil. # May you find forgiveness for yourself and forgive others. # May you share freely, never taking more than you give. # #*********************************************************************** # This file implements regression tests for SQLite library. # # The focus of this file is testing of the proper handling of conversions # to the native text representation. # # $Id: enc3.test,v 1.1 2004/06/22 17:59:57 drh Exp $ set testdir [file dirname $argv0] source $testdir/tester.tcl do_test enc3-1.1 { execsql { PRAGMA encoding=utf16le; PRAGMA encoding; } } {UTF-16le} do_test enc3-1.2 { execsql { CREATE TABLE t1(x,y); INSERT INTO t1 VALUES('abc''123',5); SELECT * FROM t1 } } {abc'123 5} do_test enc3-1.3 { execsql { SELECT quote(x) || ' ' || quote(y) FROM t1 } } {{'abc''123' 5}} finish_test |