sqlite3_unicode update to UNICODE v5.2.0
Lately I have been hyped about encryption and specifically sqlite3 database encryption, so I decided to update my test application with the latest version of sqlite3 (v3.6.23.1 at the time) and started reading segments of sqlite3 code to get a feeling how everything relating to encryption is glued together. Good thing I had located SQLCipher during my search and got a heads up.
In any case, while testing the encryption / decryption functionality, I identified some database integrity problems arising from indexes created with my slightly modified sqlite3_unicode library. A bug in the collation function would cause the string comparison function to return incorrect results both for UTF-8 and UTF-16 comparisons, and as such would report errors for missing rows in the indexes during the integrity check. This was mainly due to the fact that the string size parameter provided by sqlite3 is actually the number of bytes and not the string length.
On another note UNICODE v5.2.0 has been released for some time now, but I kept postponing any update to sqlite3_unicode library since there was no need. So with the release of the above bug fixes I decided to update the library unicode tables as well.
The update to v5.2.0.15 is recommended for users of all prior versions, to eliminate database integrity errors arising by indexing tables using prior versions of this library. Tables having indexes using the sqlite3_unicode collation will have to be reindexed using the revised string comparison function. The updated source is included for grabs in the download section

