diff options
| author | Erick Tryzelaar <erick.tryzelaar@gmail.com> | 2013-07-22 21:41:46 -0700 |
|---|---|---|
| committer | Erick Tryzelaar <erick.tryzelaar@gmail.com> | 2013-07-23 16:56:22 -0700 |
| commit | 7af56bb92199eabcfee52c43739761b18872a2c1 (patch) | |
| tree | 5a50c048e33bf6f655ac393facdb338d9650a619 /src/libstd/path.rs | |
| parent | 9fdec67a6761ae43d8fae80e10b5a7a1e0ca7c0d (diff) | |
| download | rust-7af56bb92199eabcfee52c43739761b18872a2c1.tar.gz rust-7af56bb92199eabcfee52c43739761b18872a2c1.zip | |
std: move StrUtil::as_c_str into StrSlice
Diffstat (limited to 'src/libstd/path.rs')
| -rw-r--r-- | src/libstd/path.rs | 37 |
1 files changed, 15 insertions, 22 deletions
diff --git a/src/libstd/path.rs b/src/libstd/path.rs index 3ec3407b1cc..ef7a055b0e7 100644 --- a/src/libstd/path.rs +++ b/src/libstd/path.rs @@ -23,7 +23,6 @@ use iterator::IteratorUtil; use libc; use option::{None, Option, Some}; use str::{OwnedStr, Str, StrSlice, StrVector}; -use str; use to_str::ToStr; use ascii::{AsciiCast, AsciiStr}; use vec::{OwnedVector, ImmutableVector}; @@ -342,13 +341,11 @@ mod stat { #[cfg(target_os = "win32")] impl WindowsPath { pub fn stat(&self) -> Option<libc::stat> { - unsafe { - do str::as_c_str(self.to_str()) |buf| { - let mut st = stat::arch::default_stat(); - match libc::stat(buf, &mut st) { - 0 => Some(st), - _ => None, - } + do self.to_str().as_c_str |buf| { + let mut st = stat::arch::default_stat(); + match unsafe { libc::stat(buf, &mut st) } { + 0 => Some(st), + _ => None, } } } @@ -378,13 +375,11 @@ impl WindowsPath { #[cfg(not(target_os = "win32"))] impl PosixPath { pub fn stat(&self) -> Option<libc::stat> { - unsafe { - do str::as_c_str(self.to_str()) |buf| { - let mut st = stat::arch::default_stat(); - match libc::stat(buf, &mut st) { - 0 => Some(st), - _ => None, - } + do self.to_str().as_c_str |buf| { + let mut st = stat::arch::default_stat(); + match unsafe { libc::stat(buf as *libc::c_char, &mut st) } { + 0 => Some(st), + _ => None, } } } @@ -458,13 +453,11 @@ impl PosixPath { #[cfg(unix)] impl PosixPath { pub fn lstat(&self) -> Option<libc::stat> { - unsafe { - do str::as_c_str(self.to_str()) |buf| { - let mut st = stat::arch::default_stat(); - match libc::lstat(buf, &mut st) { - 0 => Some(st), - _ => None, - } + do self.to_str().as_c_str |buf| { + let mut st = stat::arch::default_stat(); + match unsafe { libc::lstat(buf, &mut st) } { + 0 => Some(st), + _ => None, } } } |
