summaryrefslogtreecommitdiffstats
path: root/third_party/sqlite
diff options
context:
space:
mode:
authorcevans@chromium.org <cevans@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-12-17 03:42:12 +0000
committercevans@chromium.org <cevans@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-12-17 03:42:12 +0000
commit2678eacdb17a3d20b7d6712004fa7deb56f0e595 (patch)
treea5e6ae47f28bd90a8cf12bb524767f4e72fc437e /third_party/sqlite
parentf3e9efcc1fec4094e474328b37d2e5a452456f5c (diff)
downloadchromium_src-2678eacdb17a3d20b7d6712004fa7deb56f0e595.zip
chromium_src-2678eacdb17a3d20b7d6712004fa7deb56f0e595.tar.gz
chromium_src-2678eacdb17a3d20b7d6712004fa7deb56f0e595.tar.bz2
Update README and patches for recent icu REGEXP() fix.
This fix was reported to sqlite upstream. TEST=NONE BUG=NONE Review URL: http://codereview.chromium.org/506048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34807 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'third_party/sqlite')
-rw-r--r--third_party/sqlite/README.chromium6
-rw-r--r--third_party/sqlite/icu-regexp.patch17
2 files changed, 22 insertions, 1 deletions
diff --git a/third_party/sqlite/README.chromium b/third_party/sqlite/README.chromium
index c34cd76..6953e64 100644
--- a/third_party/sqlite/README.chromium
+++ b/third_party/sqlite/README.chromium
@@ -54,6 +54,7 @@ preload-cache.patch
safe-tolower.patch
sqlite-poison.patch
fts2.patch
+icu-regexp.patch
So, e.g. you could do this to apply all our patches to vanilla SQLite:
@@ -63,6 +64,7 @@ patch -p0 < ../sqlite/preload-cache.patch
patch -p0 < ../sqlite/safe-tolower.patch
patch -p0 < ../sqlite/sqlite-poison.patch
patch -p0 < ../sqlite/fts2.patch
+patch -p0 < ../sqlite/icu-regexp.patch
This will only be the case if all changes we make also update the corresponding
patch files. Therefore please remember to do that whenever you make a change!
@@ -95,8 +97,10 @@ Chris Evans <cevans@google.com>, Oct 1, 2009
--------------------------------------------
-As of Nov 9, 2009, these are our changes from sqlite_vendor:
+As of Dec 16, 2009, these are our changes from sqlite_vendor:
+ - A fix for a crash mis-calling the REGEXP() function of the ICU extension.
+ See icu-regexp.patch
- A large number of fts2 robustness fixes against corrupt data in its metadata
tables.
- fts2.c disables fts2_tokenizer().
diff --git a/third_party/sqlite/icu-regexp.patch b/third_party/sqlite/icu-regexp.patch
new file mode 100644
index 0000000..cb758ce
--- /dev/null
+++ b/third_party/sqlite/icu-regexp.patch
@@ -0,0 +1,17 @@
+--- ext/icu/icu.c.orig 2009-12-16 15:43:51.000000000 -0800
++++ ext/icu/icu.c 2009-12-15 15:23:34.000000000 -0800
+@@ -250,12 +250,12 @@
+ UErrorCode status = U_ZERO_ERROR;
+ URegularExpression *pExpr;
+ UBool res;
+- const UChar *zString = sqlite3_value_text16(apArg[1]);
++ const UChar *zString;
+
+ /* If the left hand side of the regexp operator is NULL,
+ ** then the result is also NULL.
+ */
+- if( !zString ){
++ if( nArg<2 || !(zString=sqlite3_value_text16(apArg[1])) ){
+ return;
+ }
+