On Sep 23, 2008, at 9:31 PM, Dennis Cote wrote: > Shane Harrelson wrote: >> This was my fault. http://www.sqlite.org/cvstrac/chngview?cn=5654 >> strcasecmp() isn't available on all platforms, and I naively assumed >> sqlite3StrICmp() would be (it's not in this case do to the way you >> are compiling/linking). I'll review the issue and see what I can >> do. >> > > I see this was addressed by checkin [5735] at > http://www.sqlite.org/cvstrac/chngview?cn=5735. > > It seems to me there may be an oversight here. The original > function was > strcasecmp() not strcmp(). The code in question was doing case > insensitive string comparisons, but it is now doing case sensitive > comparisons. This may lead to a change in behavior if the string > zConflict is not constrained to be lower case elsewhere in the code.
It is a change, but it looks like strcmp() is correct. From the docs describing the tcl interface: Conflict-alogrithm must be one of the SQLite conflict algorithms for the INSERT statement: rollback, abort, fail,ignore, or replace. See the SQLite Language section for ON CONFLICT for more information. The conflict-algorithm must be specified in lower case. So, accepting conflict-algorithms specified with mixed or upper case was technically incorrect. Dan. _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users