On Jul 21, 2008, at 8:10 PM, D. Richard Hipp wrote:

>
> On Jul 21, 2008, at 8:32 AM, C. Smith wrote:
>>
>> I didn't know the strings weren't nul terminated.  I changed my
>> callback to:
>>
>> static int _cmp(void *pCtx, int alen, const void *a,
>>   int blen, const void *b)
>> {
>>   int r = _wcsnicmp((const wchar_t *)a, (const wchar_t *)b,
>>     (alen < blen) ? alen : blen);

Maybe the length is still wrong. The lengths passed to an sqlite
collation sequence callback are in bytes. But _wcsnicmp() is
probably in characters, no?

Dan.



>>
>>   if(r == 0)
>>     r = alen - blen;
>>
>>   return r;
>> }
>>
>> Still doesn't work though :(
>>
>
> How did you register the collating sequence?  Did you use the
> SQLITE_UTF16_ALIGNED argument on the 3rd parameter?
>
> D. Richard Hipp
> [EMAIL PROTECTED]
>
>
>
> _______________________________________________
> sqlite-users mailing list
> sqlite-users@sqlite.org
> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to