diff options
Diffstat (limited to 'src/lib/posix_fs.rs')
| -rw-r--r-- | src/lib/posix_fs.rs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/lib/posix_fs.rs b/src/lib/posix_fs.rs index 676d4150..0a37f85d 100644 --- a/src/lib/posix_fs.rs +++ b/src/lib/posix_fs.rs @@ -9,7 +9,10 @@ impure fn list_dir(str path) -> vec[str] { let vec[str] result = vec(); while (true) { auto ent = os.libc.readdir(dir); - if (ent as int == 0) {break;} + if (ent as int == 0) { + os.libc.closedir(dir); + ret result; + } _vec.push[str](result, rustrt.rust_dirent_filename(ent)); } os.libc.closedir(dir); |