/ File History
Login
SQLite training in Houston TX on 2019-11-05 (details)
Part of the 2019 Tcl Conference

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History of src/utf.c

2019-04-14
00:34
Fix an obsolete comment and other minor issues from code inspection. file: [2f0fac34] check-in: [cd084427] user: drh branch: trunk, size: 17142
2017-07-12
12:19
Compile cleanly with SQLITE_OMIT_UTF16. file: [810fbfeb] check-in: [783100b8] user: drh branch: trunk, size: 17152
2016-02-13
23:43
Enhance ability to debug out-of-memory errors. file: [699001c7] check-in: [6a9c4a3e] user: mistachkin branch: noMemBkpt, size: 17095
2016-01-30
15:46
A different way to clear the subtype on VDBE registers when the value of the register is overwritten with new content. To fix [[f45ac567eaa9f93]. file: [10cc2519] check-in: [2e9fb129] user: dan branch: clear-subtype-flag, size: 17085
2015-12-24
14:53
Avoid a harmless compiler warning on systems where the byteorder cannot be determined at compile-time. file: [32d7f82a] check-in: [7c7b7f26] user: drh branch: trunk, size: 17071
2014-09-18
21:25
Add the Mem.szMalloc element to the Mem object and use it to keep track of the size of the Mem.zMalloc allocation. file: [fc6b889b] check-in: [9c09ac35] user: drh branch: trunk, size: 17019
2014-09-16
21:54
Continuing cleanup of memory register memory allocation handling. file: [8f634b93] check-in: [2598aedc] user: drh branch: micro-optimizations, size: 16960
2014-08-24
02:53
The sqlite3VdbeChangeEncoding() routine goes about 3x faster if the sqlite3VdbeMemTranslate() subroutine is not inlined. file: [77abb5e6] check-in: [0c7e1b87] user: drh branch: trunk, size: 16970
2014-06-18
15:24
Fix a comment on the sqlite3Utf8Read() routine. No changes to code. file: [a0314e63] check-in: [5e514f6a] user: drh branch: trunk, size: 16954
2014-03-01
18:13
Change the MEM_Dyn flag so that it means that Mem.xDel exists and must be used to free the string or blob. Add tighter invariant checks on Mem. file: [6dc9ec9f] check-in: [44e1c337] user: drh branch: enhanced-mem-check, size: 16972
2013-08-07
15:57
Remove the unused sqlite3Utf8to16() utility function. file: [6fc6c88d] check-in: [9159b43e] user: drh branch: sqlite_stat4, size: 17036
2013-08-03
20:24
Begin adding experimental sqlite_stat4 table. This commit is buggy. file: [acd0b6f8] check-in: [2beea303] user: dan branch: sqlite_stat4, size: 17813
2012-09-17
18:56
Remove an unnecessary parameter from sqlite3Utf8Read() resulting in a slight performance increase. file: [8d819e2e] check-in: [8b962c94] user: drh branch: trunk, size: 17813
2011-08-26
13:52
Merge branches branch-3.7.2 and stat3-enhancement into a new branch for testing purposes. file: [d59be28d] check-in: [0df04f92] user: drh branch: stat3-3.7.2, size: 18060
2011-08-12
01:51
Begin a branch that experimentally replaces sqlite_stat2 with a new table called sqlite_stat3 that will hopefully facilitate better query planning decisions. file: [890c67dc] check-in: [52e1d7e8] user: drh branch: stat3-enhancement, size: 18032
2011-06-13
12:19
Use only unsigned values in the implementatin of LIKE and GLOB so that values won't overflow to negative when dealing with malformed UTF8. file: [c53eb740] check-in: [77f01578] user: drh branch: trunk, size: 18032
2011-03-24
17:43
Minor change to sqlite3Utf8Read() to make consistent with READ_UTF8() usage and avoid implementation defined usages of <<. Added some additional UTF-8 test cases. file: [d83650c3] check-in: [7173b392] user: shaneh branch: trunk, size: 18032
2010-03-05
16:32
Modify the vdbe so that the comparison operator opcodes do not modify the data type of operands. Fix for [aa92c76cd4]. file: [1baeeac9] check-in: [8858042f] user: dan branch: trunk, size: 18060
2009-11-10
01:30
Remove the obsolete "$Id:$" RCS identifier strings from the source code. file: [dad16adc] check-in: [f6c045f6] user: drh branch: trunk, size: 18026
2009-10-24
03:04
Another attempt at getting the pTail pointer computations correct for sqlite3_prepare16(). Ticket [3fe897352e]. file: [3586a6a2] check-in: [a96b4e8c] user: drh branch: trunk, size: 18080
01:55
Check-in [19064d7cea] broke the pTail return on sqlite3_prepare16() when the SQL contained surrogates. This check-in restores correct function. Part of ticket [3fe897352e]. file: [2395dfcd] check-in: [65b1e3a4] user: drh branch: trunk, size: 18943
2009-10-23
18:15
Make sure that UTF16 to UTF8 conversions to not read past the end of the UTF16 input buffer if the last two bytes of the UTF16 happen to be the first half of a surrogate pair. Ticket [3fe897352e] file: [7b4012e8] check-in: [19064d7c] user: drh branch: trunk, size: 18698
2009-09-07
04:38
Warning cleanup from the MSVC compile. file: [99cf927e] check-in: [26cd015c] user: shane branch: trunk, size: 18608
2009-08-19
08:18
Add the SQLITE_ENABLE_STAT2 macro. If this is not defined at build-time, the stat2 table is not created, populated, or used. file: [3ca2c946] check-in: [362665e8] user: dan branch: trunk, size: 18609
2009-08-17
17:06
First version of sqlite_stat2 (schema forces exactly 10 samples). file: [9b022ac1] check-in: [dd96bda2] user: dan branch: trunk, size: 18575
2009-04-01
18:40
Fix a bug in the sqlite3Utf16ByteLen() function so that it computes the correct length even for strings that contain surrogate pairs. Ticket #3766. (CVS 6427) file: [9541d28f] check-in: [766bb7e5] user: drh branch: trunk, size: 17831
16:33
Remove dead code from the UTF conversion routines. Fix a bug in sqlite3_prepare16_v2() in which an out-of-memory error fails to set the statement return pointer to NULL. (CVS 6423) file: [7bec2eea] check-in: [94e2f815] user: drh branch: trunk, size: 18058
2009-03-31
03:41
Fix compiler warnings from gcc and MSVC; Correct typo in select.c; (CVS 6417) file: [f9ed1ca7] check-in: [76851417] user: shane branch: trunk, size: 17998
2008-12-10
22:30
Work to remove harmless MSVC compiler warnings. (CVS 6013) file: [1da9c832] check-in: [715dcd52] user: shane branch: trunk, size: 17991
19:26
Never use strlen(). Use our own internal sqlite3Strlen30() which is guaranteed to never overflow an integer. Additional explicit casts to avoid nuisance warning messages. (CVS 6007) file: [7bc90bc7] check-in: [c872d554] user: drh branch: trunk, size: 17886
2008-12-09
03:55
Get rid of more silly compiler warnings. (CVS 5996) file: [515ce4f1] check-in: [59ae0020] user: drh branch: trunk, size: 17870
2008-12-08
21:37
Some minor name refactoring in where.c. Avoid declaring variables before initializing them in the amalgamation because VC++ doesn't like that. (CVS 5993) file: [3d087d22] check-in: [6ed696e7] user: drh branch: trunk, size: 17778
2008-11-07
03:29
Prevent buffer overruns when converting malformed UTF16 to UTF8. Ticket #3482. (CVS 5869) file: [86dc0f80] check-in: [3f657e88] user: drh branch: trunk, size: 17717
2008-08-12
15:04
Fix further warnings/compilation errors in test code. (CVS 5558) file: [c63e6f69] check-in: [42247b91] user: danielk1977 branch: trunk, size: 17703
14:48
Fix warnings and a compilation error in test code. (CVS 5556) file: [036dd1a2] check-in: [80c129e6] user: danielk1977 branch: trunk, size: 17699
2008-07-29
11:25
Use a macro to make sure that the calls to sqlite3Utf8Read() from MemTranslate() are inlined. This speeds up converting from utf8 to utf16. (CVS 5492) file: [a7004436] check-in: [78a623bb] user: danielk1977 branch: trunk, size: 17671
2008-06-27
18:59
Changed copy-paste error in comment. Fixes #3193. (CVS 5323) file: [8d52f620] check-in: [00eee53e] user: mihailim branch: trunk, size: 17198
2008-03-28
15:44
Changes to the Mem structure to reduce the frequency of freeing and reallocating the dynamic buffer. (CVS 4928) file: [8c94fa10] check-in: [d0bf73d8] user: danielk1977 branch: trunk, size: 17204
2008-02-13
18:25
Where possible, avoid freeing buffers allocated for vdbe memory cells in case they can be reused. (CVS 4783) file: [32b00d6e] check-in: [990237e2] user: danielk1977 branch: trunk, size: 17177
2007-10-03
08:46
Add automatic recovery from the pager "error-state". Also add a new error code - SQLITE_IOERR_NOMEM. (CVS 4454) file: [ef4b7d83] check-in: [12eca32a] user: danielk1977 branch: trunk, size: 18034
2007-09-12
17:01
Fixes for compilation/testing when the various OMIT macros are defined. (CVS 4423) file: [e8c72a12] check-in: [c8405b15] user: danielk1977 branch: trunk, size: 17960
2007-09-01
11:04
Test sqlite3_bind_zeroblob(). Only include sqlite3Utf8To8 in builds if SQLITE_DEBUG is defined. (CVS 4363) file: [3cb3e9a4] check-in: [fde6142b] user: danielk1977 branch: trunk, size: 17960
2007-08-21
19:33
The sqlite3_value object now carries an sqlite3* pointer to use for recording malloc failures. This eliminates the need to pass sqlite3* pointers into many internal interfaces. Also added more mutexing. (CVS 4263) file: [4af6259d] check-in: [92872761] user: drh branch: trunk, size: 17803
2007-08-16
10:09
More work on refactoring of malloc() interfaces. There are still many errors. (CVS 4233) file: [853f97ce] check-in: [77b16713] user: danielk1977 branch: trunk, size: 17761
04:30
Half-way through a major refactoring of the memory allocation. I have not even attempted to compile so I am certain there are countless errors. (CVS 4231) file: [e2212080] check-in: [deb7ecd6] user: drh branch: trunk, size: 17717
2007-08-07
17:04
Revise the amalgamation so that all symbols have file scope except those that begin with "sqlite3_". Ticket #2554. (CVS 4197) file: [68873142] check-in: [73db5452] user: drh branch: trunk, size: 17663
2007-07-23
19:12
Rework the UTF8 reader logic in order to avoid the use of malloc(). Ticket #2523. (CVS 4175) file: [c152f99d] check-in: [9a059cb6] user: drh branch: trunk, size: 17656
2007-05-23
16:23
Add some code to MemTranslate() to prevent the READ_UTF8() macro from overreading a buffer. (CVS 4033) file: [01b2aba0] check-in: [0595319c] user: danielk1977 branch: trunk, size: 18062
2007-05-16
18:23
Remove the SKIP_UTF16 macros (they are no longer in use). (CVS 4018) file: [73134f4d] check-in: [73e654fb] user: danielk1977 branch: trunk, size: 15868
18:11
Fix handling of utf-16 encoding of code point 0xE000. (CVS 4017) file: [9ac9672b] check-in: [bfc35ce8] user: danielk1977 branch: trunk, size: 17752
2007-05-15
14:40
Remove the alternative UTF-16 implementation of SUBSTR(). It does not work anymore and the UTF-8 version can do everything that the UTF-16 version does. (CVS 4009) file: [b881fe54] check-in: [9b91502e] user: drh branch: trunk, size: 17748
11:55
A new approach for UTF-8 translation. (CVS 4004) file: [3fe21361] check-in: [6c8ad279] user: drh branch: trunk, size: 18972
2007-05-10
17:23
Add some UTF-8 test infrastructure. Treat NaN as NULL. The printf routines print infinity as "Inf" not as "NaN". Ticket #2345. (CVS 3972) file: [be7c64ee] check-in: [ffe615a7] user: drh branch: trunk, size: 22366
2007-05-08
20:37
Fix the amalgamation generator so that all non-API functions have file scope. (CVS 3958) file: [168fe535] check-in: [e9f56ead] user: drh branch: trunk, size: 21780
2007-03-31
15:28
Increase test coverage by statically defining SQLITE_BIGENDIAN and related macros for ix86 platforms. Still a run-time test for other architectures. Need to add additional cases to cover other popular processors. (CVS 3781) file: [e64a48bc] check-in: [476e7c3f] user: drh branch: trunk, size: 21780
2006-10-19
01:58
When converting UTF8 or UTF16 strings, change overlong strings and other illegal codes to 0xFFFD. Ticket #2029. (CVS 3479) file: [67ecb103] check-in: [0c6736df] user: drh branch: trunk, size: 21648
2006-10-05
11:43
Fix another UTF conversion problem on x64. Ticket #2008. (CVS 3466) file: [f467b489] check-in: [d16523e5] user: drh branch: trunk, size: 20987
2006-10-04
15:23
Fix UTF conversions for -O2 on gcc 4.1.1. Ticket #2008. (CVS 3464) file: [297d21e9] check-in: [86a08bb7] user: drh branch: trunk, size: 20978
2006-07-26
14:57
Fix an overzealous assert() in the UTF-16 to UTF-8 converter. (CVS 3338) file: [4459801e] check-in: [096bd821] user: drh branch: trunk, size: 20951
2006-04-16
12:05
Allocate enough memory for the worst-case UTF-16 to UTF-8 conversion. Ticket #1773. (CVS 3174) file: [ab81ac59] check-in: [2a0120c0] user: drh branch: trunk, size: 20891
2006-02-24
02:53
Remove unused parameters on internal APIs. Suppress warnings from CodeWarrior. (CVS 3110) file: [1d51225b] check-in: [4b22e4b8] user: drh branch: trunk, size: 20920
2006-01-24
10:58
General test coverage improvements. (CVS 3022) file: [1199766b] check-in: [153940af] user: danielk1977 branch: trunk, size: 20938
2006-01-13
06:33
Minor modification to restoreOrClearCursorPosition() to improve efficiency. Do not allocate the extra 8-bytes if memory-management is not enabled. (CVS 2936) file: [5ab8ca05] check-in: [dd705955] user: danielk1977 branch: trunk, size: 20372
2005-12-15
22:34
Fix the utf8 to utf16 conversion routine for short strings. Bug introduced by check-in (2817). (CVS 2821) file: [b7bffac4] check-in: [4fba2db3] user: drh branch: trunk, size: 20365
03:04
Fix memory allocation problems on the utf-16 versions of collating function control routines. (CVS 2817) file: [d2360f55] check-in: [ad292e27] user: drh branch: trunk, size: 20256
2005-12-09
20:02
Clean up annoying (and pointless) compiler warnings about differing signedness. (CVS 2810) file: [a1fd34e5] check-in: [83a59151] user: drh branch: trunk, size: 19796
2005-01-28
01:29
Make sure the #include of "sqliteInt.h" always comes first in C source files. (CVS 2284) file: [bda5eb85] check-in: [522c094f] user: drh branch: trunk, size: 19774
2005-01-12
07:15
Tests to improve coverage of vdbemem.c. (CVS 2200) file: [9bece2c7] check-in: [319bb4a9] user: danielk1977 branch: trunk, size: 19782
2004-11-14
21:56
The SQLITE_OMIT_UTF16 macro now removes lots of code and all tests still pass. (CVS 2100) file: [e45ce11b] check-in: [98c7a554] user: drh branch: trunk, size: 19712
2004-09-24
23:20
Save a few bytes in utf.c. (CVS 1981) file: [f4f83acd] check-in: [8154d545] user: drh branch: trunk, size: 19580
2004-08-31
00:52
Combine the implementation of LIKE and GLOB into a single parameterized function. (CVS 1923) file: [32889009] check-in: [0a47c8f8] user: drh branch: trunk, size: 19711
2004-08-08
23:39
Fix problems in the handling of malloc failures. (CVS 1882) file: [3d8f7bff] check-in: [81d91d14] user: drh branch: trunk, size: 21893
2004-06-28
13:09
More coverage testing. (CVS 1754) file: [f03535db] check-in: [33292104] user: danielk1977 branch: trunk, size: 21792
2004-06-23
13:46
Improve test coverage of utf.c. (CVS 1678) file: [a8fb39c9] check-in: [53c553c7] user: danielk1977 branch: trunk, size: 18684
00:23
Add a comment to the output buffer allocation in sqlite3VdbeMemTranslate() (CVS 1673) file: [9c66605c] check-in: [e2f7f182] user: danielk1977 branch: trunk, size: 18693
2004-06-22
22:04
Be careful to initialize the Mem.xDel field to zero for static Mems. (CVS 1671) file: [c5ae076b] check-in: [e17ea666] user: drh branch: trunk, size: 18007
2004-06-18
17:10
Changes to allow libsqlite3.a and libsqlite.a to be both linked into the same program at the same time. (CVS 1621) file: [3a259601] check-in: [2590fffc] user: drh branch: trunk, size: 17977
04:24
Optimisation for unicode encoding conversion routines. (CVS 1614) file: [7464315f] check-in: [39a415ea] user: danielk1977 branch: trunk, size: 17977
2004-06-17
05:36
Use the faster LIKE function from sqlite v2. Add special user functions to test builds to test the auxdata APIs. (CVS 1610) file: [92f0dd69] check-in: [b9493c5f] user: danielk1977 branch: trunk, size: 23360
2004-06-12
00:42
Use the SQLITE_UTF* symbols instead of the old internal TEXT_Utf* symbols. (CVS 1572) file: [e16737b3] check-in: [9b84f2f4] user: danielk1977 branch: trunk, size: 22001
2004-06-06
12:41
Performance improvements for LIKE. It is still too slow though. (CVS 1535) file: [c2c8e445] check-in: [30b81507] user: danielk1977 branch: trunk, size: 21945
09:44
Enhance user function API to support association of meta-data with constant arguments and the specification of text encoding preference. The LIKE operator takes advantage of both. (CVS 1534) file: [0e83deb0] check-in: [92337d8f] user: danielk1977 branch: trunk, size: 20401
2004-06-02
00:29
Fix a bug with UTF-16 byte-order-marks on big-endian hosts. (CVS 1522) file: [c8be20ec] check-in: [c17b8641] user: danielk1977 branch: trunk, size: 16906
2004-05-31
18:51
Change all SQLITE3 preprocessor macros to SQLITE. Documentation updates. (CVS 1511) file: [c18b4e66] check-in: [adf7e29f] user: drh branch: trunk, size: 17277
2004-05-29
02:44
Avoid arithmetic on void pointers. (CVS 1489) file: [f8604999] check-in: [3d68703e] user: danielk1977 branch: trunk, size: 17288
2004-05-28
16:00
Factor common code for generating index keys into a procedure. Other speed improvements and bug fixes. (CVS 1487) file: [d87fffc1] check-in: [6661bb5f] user: drh branch: trunk, size: 17246
2004-05-27
09:28
Various bugfixes. 68 Test cases still fail. (CVS 1471) file: [59b5c8f0] check-in: [67a140cf] user: danielk1977 branch: trunk, size: 17254
01:53
More MEM changes in the vdbe.c. Still will not compile. (CVS 1469) file: [73d70f27] check-in: [dbdd1a7f] user: drh branch: trunk, size: 17250
2004-05-24
12:39
Non-aggregate SQL functions use sqlite_value* instead of const char * for argument values. (CVS 1449) file: [1d38da85] check-in: [1e47d738] user: danielk1977 branch: trunk, size: 17115
2004-05-23
13:30
Begin changing the vdbe so all stack values use the database encoding. (CVS 1444) file: [441c5918] check-in: [f47de3a9] user: danielk1977 branch: trunk, size: 17112
2004-05-22
17:41
Split up os.c into separate files, one for each platform. (CVS 1441) file: [a4640c6a] check-in: [5c61be1c] user: drh branch: trunk, size: 16481
03:05
Steps towards UTF-16 databases. Some tests are failing because of this commit. (CVS 1433) file: [537e1c98] check-in: [c4a82468] user: danielk1977 branch: trunk, size: 16529
2004-05-20
11:00
Add some more elements of the new API. (CVS 1416) file: [c27c4f11] check-in: [2821767b] user: danielk1977 branch: trunk, size: 15404
01:12
Add support for the new sqlite3_bind_*() APIs. (CVS 1410) file: [72a98430] check-in: [e8f980d8] user: danielk1977 branch: trunk, size: 14064
2004-05-19
10:34
Tests for text encoding conversion functions. Also new sqlite3_bindXX APIs. (CVS 1400) file: [48c537bf] check-in: [4e602bb4] user: danielk1977 branch: trunk, size: 14042
2004-05-08
08:23
Change lots of internal symbols from sqliteXXX to sqlite3XXX so that the library links again. It doesn't work yet, due to changes in the btree layer calling convention. (CVS 1324) file: [fc799748] check-in: [8af6474c] user: danielk1977 branch: trunk, size: 13787
2004-05-06
23:37
Add code to convert between the various supported unicode encoding schemes. Untested at this point. (CVS 1315) file: [1f2ac0c4] check-in: [71260ff7] user: danielk1977 branch: trunk, size: 13784
2004-05-04
15:00
Added template for the utf.c file containing conversion routines. (CVS 1313) file: [8d74ddbf] check-in: [89b42c46] user: drh branch: trunk, size: 2620 Added