descriptor, since mingw refuses to rename any in-use file system
object. */
-/* Array of file descriptors opened. If it points to a directory, it stores
- info about this directory. */
+/* Array of file descriptors opened. If REPLACE_OPEN_DIRECTORY or if it points
+ to a directory, it stores info about this directory. */
typedef struct
{
char *name; /* Absolute name of the directory, or NULL. */
return NULL;
}
+#if REPLACE_OPEN_DIRECTORY
/* Return stat information about FD in STATBUF. Needed when
rpl_open() used a dummy file to work around an open() that can't
normally visit directories. */
-#undef fstat
+# undef fstat
int
rpl_fstat (int fd, struct stat *statbuf)
{
- if (REPLACE_OPEN_DIRECTORY
- && 0 <= fd && fd < dirs_allocated && dirs[fd].name != NULL)
+ if (0 <= fd && fd < dirs_allocated && dirs[fd].name != NULL)
return stat (dirs[fd].name, statbuf);
return fstat (fd, statbuf);
}
+#endif
/* Override opendir() and closedir(), to keep track of the open file
descriptors. Needed because there is a function dirfd(). */