$NetBSD: patch-ac,v 1.40 2011/05/04 20:31:40 adam Exp $ --- dlls/ntdll/directory.c.orig 2008-10-17 17:45:25.000000000 +0200 +++ dlls/ntdll/directory.c 2010-02-19 23:38:56.000000000 +0100 @@ -131,6 +131,20 @@ #endif /* linux */ #define IS_OPTION_TRUE(ch) ((ch) == 'y' || (ch) == 'Y' || (ch) == 't' || (ch) == 'T' || (ch) == '1') +#if defined(__NetBSD_Version__) && __NetBSD_Version__ >= 399000800 +/* + * workaround for obsolete getdirentries() which returns + * the old 32-bit inode struct dirent, while dirent.h has the + * new 64-bit inode struct dirent inode since 3.99.8 + */ +int compat_netbsd_getdirentries(int fd, char *buf, int nbytes, long *basep) +{ + *basep = (long)lseek(fd, 0, SEEK_CUR); + return getdents(fd, buf, (size_t)nbytes); +} +#define getdirentries compat_netbsd_getdirentries +#endif + #define IS_SEPARATOR(ch) ((ch) == '\\' || (ch) == '/') #define INVALID_NT_CHARS '*','?','<','>','|','"'