$NetBSD: patch-ac,v 1.39 2010/02/20 08:35:58 schwarz 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
@@ -127,6 +127,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   '*','?','<','>','|','"'
