Rollup merge of #45892 - redox-os:is_absolute_fix, r=alexcrichton
Redox: Return true from Path::is_absolute if a Path contains root or a scheme In Redox, different subsystems have different filesystem paths. However, the majority of applications using the `Path::is_absolute` function really only want to know if a path is absolute from the perspective of the scheme it is currently running in, usually `file:`. This makes both `file:/` and `/` return `true` from `Path::is_absolute`, meaning that most code does not have to check if it is running on Redox. Code that wants to know if a path contains a scheme can implement such a check on its own. Related to https://github.com/rust-lang/rust/pull/45893
This commit is contained in:
commit
563af5d260
1 changed files with 4 additions and 4 deletions
|
@ -1690,11 +1690,11 @@ impl Path {
|
||||||
#[stable(feature = "rust1", since = "1.0.0")]
|
#[stable(feature = "rust1", since = "1.0.0")]
|
||||||
#[allow(deprecated)]
|
#[allow(deprecated)]
|
||||||
pub fn is_absolute(&self) -> bool {
|
pub fn is_absolute(&self) -> bool {
|
||||||
if !cfg!(target_os = "redox") {
|
if cfg!(target_os = "redox") {
|
||||||
self.has_root() && (cfg!(unix) || self.prefix().is_some())
|
|
||||||
} else {
|
|
||||||
// FIXME: Allow Redox prefixes
|
// FIXME: Allow Redox prefixes
|
||||||
has_redox_scheme(self.as_u8_slice())
|
self.has_root() || has_redox_scheme(self.as_u8_slice())
|
||||||
|
} else {
|
||||||
|
self.has_root() && (cfg!(unix) || self.prefix().is_some())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue