diff options
Diffstat (limited to 'src/libnative')
| -rw-r--r-- | src/libnative/io/file.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/libnative/io/file.rs b/src/libnative/io/file.rs index 80f5f74c53a..6d3a156a2b0 100644 --- a/src/libnative/io/file.rs +++ b/src/libnative/io/file.rs @@ -571,7 +571,8 @@ pub fn readdir(p: &CString) -> IoResult<~[Path]> { else { let fp_vec = vec::from_buf( fp_buf, wcslen(fp_buf) as uint); - let fp_str = str::from_utf16(fp_vec) + let fp_trimmed = str::truncate_utf16_at_nul(fp_vec); + let fp_str = str::from_utf16(fp_trimmed) .expect("rust_list_dir_wfd_fp_buf returned invalid UTF-16"); paths.push(Path::new(fp_str)); } |
