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.