aboutsummaryrefslogtreecommitdiff
path: root/ctr-std/src/sys
diff options
context:
space:
mode:
authorFenrirWolf <[email protected]>2018-03-04 22:21:50 -0700
committerGitHub <[email protected]>2018-03-04 22:21:50 -0700
commitc95c3289f80e0596834d02e63d09178b744ccf86 (patch)
treec8d9250e6051baeb6cb9739aa548701ac7cdb34f /ctr-std/src/sys
parentUpdate to nightly-2018-03-01 (diff)
downloadctru-rs-c95c3289f80e0596834d02e63d09178b744ccf86.tar.xz
ctru-rs-c95c3289f80e0596834d02e63d09178b744ccf86.zip
Make std::path aware of archive prefixes (#61)
Diffstat (limited to 'ctr-std/src/sys')
-rw-r--r--ctr-std/src/sys/unix/path.rs12
1 files changed, 10 insertions, 2 deletions
diff --git a/ctr-std/src/sys/unix/path.rs b/ctr-std/src/sys/unix/path.rs
index 395b8c1..d96473b 100644
--- a/ctr-std/src/sys/unix/path.rs
+++ b/ctr-std/src/sys/unix/path.rs
@@ -21,8 +21,16 @@ pub fn is_verbatim_sep(b: u8) -> bool {
b == b'/'
}
-pub fn parse_prefix(_: &OsStr) -> Option<Prefix> {
- None
+pub fn parse_prefix(path: &OsStr) -> Option<Prefix> {
+ if let Some(path_str) = path.to_str() {
+ if let Some(i) = path_str.find(':') {
+ Some(Prefix::Verbatim(OsStr::new(&path_str[..i])))
+ } else {
+ None
+ }
+ } else {
+ None
+ }
}
pub const MAIN_SEP_STR: &'static str = "/";