On Fri, 9 Mar 2007, Alexandre Julliard wrote: [...]
void * __cdecl _lfind( const void *key, const void *base, unsigned int *nmemb, - unsigned int size, int(*compar)(const void *, const void *) ) + size_t size, int(*compar)(const void *, const void *) ) { - return lfind( key, base, nmemb, size, compar ); + size_t n = *nmemb; + return lfind( key, base, &n, size, compar ); }
The problem is that Microsoft's _lfind() takes an 'unsigned int' and not a size_t. Or, more precisely, the msvcrt one declared in search.h does. There's no official prototype for the ntdll implementation that I know of, but I'd expect it to have the same prototype. So my understanding is that replacing this parameter type with a size_t could be a problem on 64bit systems. -- Francois Gouget <fgouget(a)free.fr> http://fgouget.free.fr/ Stolen from an Internet user: "f u cn rd ths, u cn gt a gd jb n cmptr prgrmmng !"