mirror of
https://github.com/rust-lang/rust.git
synced 2026-05-15 20:45:45 +03:00
Fix errors in Box<Path> conversions
This commit is contained in:
+4
-2
@@ -1341,7 +1341,8 @@ pub fn into_boxed_path(self) -> Box<Path> {
|
||||
#[stable(feature = "box_from_path", since = "1.17.0")]
|
||||
impl<'a> From<&'a Path> for Box<Path> {
|
||||
fn from(path: &'a Path) -> Box<Path> {
|
||||
let rw = Box::into_raw(Box::from(&path.inner)) as *mut Path;
|
||||
let boxed: Box<OsStr> = path.inner.into();
|
||||
let rw = Box::into_raw(boxed) as *mut Path;
|
||||
unsafe { Box::from_raw(rw) }
|
||||
}
|
||||
}
|
||||
@@ -2313,7 +2314,8 @@ pub fn is_dir(&self) -> bool {
|
||||
#[stable(feature = "into_boxed_path", since = "1.20.0")]
|
||||
pub fn into_path_buf(self: Box<Path>) -> PathBuf {
|
||||
let rw = Box::into_raw(self) as *mut OsStr;
|
||||
unsafe { Box::from_raw(rw) }
|
||||
let inner = unsafe { Box::from_raw(rw) };
|
||||
PathBuf { inner: OsString::from(inner) }
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user