In the 4.7 release of locate there's a bug where locate -i 'old'
matches Old OLD olD etc but locate -i '*old*' only matches old There is a missing conditional in fastfind.c: BEGIN diff -u HERE - fastfind.c 1.10 --- fastfind.c.old Mon Jun 8 16:18:57 2009 +++ fastfind.c Fri May 21 22:17:35 2010 @@ -305,7 +305,11 @@ shortpath = basename(path); if ((!f_basename && (!globflag || +#ifdef FF_ICASE + !fnmatch(pathpart, shortpath, FNM_CASEFOLD))) +#else /* FF_ICASE */ !fnmatch(pathpart, shortpath, 0))) +#endif /* FF_ICASE */ || (strstr(shortpath, pathpart) != NULL)) { if (f_silent) END diff -u HERE Thanks! geoff steckel