about summary refs log tree commit diff
path: root/src/libstd
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2014-03-04 17:27:43 -0800
committerAlex Crichton <alex@alexcrichton.com>2014-03-05 09:11:10 -0800
commit8334dd445fb10089a68808e7895f0c00d6fd0b3e (patch)
treee6886b691e2cd20d65211444b5993e55076fff2b /src/libstd
parentfe50c75d02c9b41bcda28596077b1122a89bee5d (diff)
downloadrust-8334dd445fb10089a68808e7895f0c00d6fd0b3e.tar.gz
rust-8334dd445fb10089a68808e7895f0c00d6fd0b3e.zip
native: Stop using readdir()
This function is not threadsafe, and is deprecated in favor of the threadsafe
readdir_r variant.

Closes #12692
Diffstat (limited to 'src/libstd')
-rw-r--r--src/libstd/libc.rs9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/libstd/libc.rs b/src/libstd/libc.rs
index ef641bbb665..7096765d9fc 100644
--- a/src/libstd/libc.rs
+++ b/src/libstd/libc.rs
@@ -3657,13 +3657,16 @@ pub mod funcs {
             pub unsafe fn opendir(dirname: *c_char) -> *DIR {
                 rust_opendir(dirname)
             }
-            pub unsafe fn readdir(dirp: *DIR) -> *dirent_t {
-                rust_readdir(dirp)
+            pub unsafe fn readdir_r(dirp: *DIR,
+                                    entry: *mut dirent_t,
+                                    result: *mut *mut dirent_t) -> c_int {
+                rust_readdir_r(dirp, entry, result)
             }
 
             extern {
                 fn rust_opendir(dirname: *c_char) -> *DIR;
-                fn rust_readdir(dirp: *DIR) -> *dirent_t;
+                fn rust_readdir_r(dirp: *DIR, entry: *mut dirent_t,
+                                  result: *mut *mut dirent_t) -> c_int;
             }
 
             extern {