diff options
Diffstat (limited to 'win32/win32.c')
-rw-r--r-- | win32/win32.c | 22 |
1 files changed, 0 insertions, 22 deletions
diff --git a/win32/win32.c b/win32/win32.c index d592ba6b8b..b1b55d34e1 100644 --- a/win32/win32.c +++ b/win32/win32.c @@ -1393,8 +1393,6 @@ rb_w32_opendir(const char *filename) SetBit(p->bits, 0); if (fd.dwFileAttributes & FILE_ATTRIBUTE_REPARSE_POINT) SetBit(p->bits, 1); - p->bits = ALLOC_N(char, 1); - p->bits[0] = fd.attrib & _A_SUBDIR ? 1 : 0; p->nfiles++; // @@ -1431,18 +1429,6 @@ rb_w32_opendir(const char *filename) if (fd.dwFileAttributes & FILE_ATTRIBUTE_REPARSE_POINT) SetBit(p->bits, p->nfiles * 2 + 1); - - if (p->nfiles % 8 == 0) { - Renew (p->bits, p->nfiles / 8 + 1, char); - if (p->bits == NULL) { - rb_fatal ("opendir: malloc failed!\n"); - } - p->bits[p->nfiles / 8] = 0; - } - if (fd.attrib & _A_SUBDIR) { - p->bits[p->nfiles / 8] |= (1 << p->nfiles % 8); - } - p->nfiles++; idx += len+1; } @@ -1480,12 +1466,6 @@ rb_w32_readdir(DIR *dirp) dirp->dirstr.d_ino = dummy++; // - // Directory flag - // - dirp->dirstr.d_isdir = dirp->bits[dirp->bitpos / 8] & (1 << dirp->bitpos % 8); - dirp->bitpos++; - - // // Attributes // dirp->dirstr.d_isdir = GetBit(dirp->bits, dirp->bitpos); @@ -1537,7 +1517,6 @@ rb_w32_rewinddir(DIR *dirp) { dirp->curr = dirp->start; dirp->bitpos = 0; - dirp->bitpos = 0; } // @@ -1547,7 +1526,6 @@ rb_w32_rewinddir(DIR *dirp) void rb_w32_closedir(DIR *dirp) { - free(dirp->bits); free(dirp->start); free(dirp->bits); free(dirp); |