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