Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
int
Rust
提交
d54ed567
R
Rust
项目概览
int
/
Rust
大约 1 年 前同步成功
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
Rust
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
d54ed567
编写于
2月 25, 2015
作者:
M
Manish Goregaokar
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
path -> PathBuf for osx/dragonfly (fixup #22727)
上级
2470fa15
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
11 addition
and
11 deletion
+11
-11
src/libstd/sys/unix/os.rs
src/libstd/sys/unix/os.rs
+11
-11
未找到文件。
src/libstd/sys/unix/os.rs
浏览文件 @
d54ed567
...
...
@@ -183,7 +183,7 @@ fn description(&self) -> &str { "failed to join paths" }
}
#[cfg(target_os
=
"freebsd"
)]
pub
fn
current_exe
()
->
IoResult
<
Path
>
{
pub
fn
current_exe
()
->
io
::
Result
<
PathBuf
>
{
unsafe
{
use
libc
::
funcs
::
bsd44
::
*
;
use
libc
::
consts
::
os
::
extra
::
*
;
...
...
@@ -195,16 +195,16 @@ pub fn current_exe() -> IoResult<Path> {
let
err
=
sysctl
(
mib
.as_mut_ptr
(),
mib
.len
()
as
::
libc
::
c_uint
,
ptr
::
null_mut
(),
&
mut
sz
,
ptr
::
null_mut
(),
0
as
libc
::
size_t
);
if
err
!=
0
{
return
Err
(
IoError
::
last
_error
());
}
if
sz
==
0
{
return
Err
(
IoError
::
last
_error
());
}
if
err
!=
0
{
return
Err
(
io
::
Error
::
last_os
_error
());
}
if
sz
==
0
{
return
Err
(
io
::
Error
::
last_os
_error
());
}
let
mut
v
:
Vec
<
u8
>
=
Vec
::
with_capacity
(
sz
as
uint
);
let
err
=
sysctl
(
mib
.as_mut_ptr
(),
mib
.len
()
as
::
libc
::
c_uint
,
v
.as_mut_ptr
()
as
*
mut
libc
::
c_void
,
&
mut
sz
,
ptr
::
null_mut
(),
0
as
libc
::
size_t
);
if
err
!=
0
{
return
Err
(
IoError
::
last
_error
());
}
if
sz
==
0
{
return
Err
(
IoError
::
last
_error
());
}
if
err
!=
0
{
return
Err
(
io
::
Error
::
last_os
_error
());
}
if
sz
==
0
{
return
Err
(
io
::
Error
::
last_os
_error
());
}
v
.set_len
(
sz
as
uint
-
1
);
// chop off trailing NUL
Ok
(
Path
::
new
(
v
))
Ok
(
Path
Buf
::
new
::
<
OsString
>
(
&
OsStringExt
::
from_vec
(
v
)
))
}
}
...
...
@@ -227,7 +227,7 @@ pub fn current_exe() -> io::Result<PathBuf> {
unsafe
{
let
v
=
rust_current_exe
();
if
v
.is_null
()
{
Err
(
IoError
::
last
_error
())
Err
(
io
::
Error
::
last_os
_error
())
}
else
{
Ok
(
Path
::
new
(
CStr
::
from_ptr
(
v
)
.to_bytes
()
.to_vec
()))
}
...
...
@@ -240,17 +240,17 @@ pub fn current_exe() -> io::Result<PathBuf> {
}
#[cfg(any(target_os
=
"macos"
,
target_os
=
"ios"
))]
pub
fn
current_exe
()
->
IoResult
<
Path
>
{
pub
fn
current_exe
()
->
io
::
Result
<
PathBuf
>
{
unsafe
{
use
libc
::
funcs
::
extra
::
_
NSGetExecutablePath
;
let
mut
sz
:
u32
=
0
;
_
NSGetExecutablePath
(
ptr
::
null_mut
(),
&
mut
sz
);
if
sz
==
0
{
return
Err
(
IoError
::
last
_error
());
}
if
sz
==
0
{
return
Err
(
io
::
Error
::
last_os
_error
());
}
let
mut
v
:
Vec
<
u8
>
=
Vec
::
with_capacity
(
sz
as
uint
);
let
err
=
_
NSGetExecutablePath
(
v
.as_mut_ptr
()
as
*
mut
i8
,
&
mut
sz
);
if
err
!=
0
{
return
Err
(
IoError
::
last
_error
());
}
if
err
!=
0
{
return
Err
(
io
::
Error
::
last_os
_error
());
}
v
.set_len
(
sz
as
uint
-
1
);
// chop off trailing NUL
Ok
(
Path
::
new
(
v
))
Ok
(
Path
Buf
::
new
::
<
OsString
>
(
&
OsStringExt
::
from_vec
(
v
)
))
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录