Auto merge of #34946 - alexcrichton:fix-cfg, r=brson

std: Fix usage of SOCK_CLOEXEC

This code path was intended to only get executed on Linux, but unfortunately the
`cfg!` was malformed so it actually never got executed.
This commit is contained in:
bors 2016-07-27 18:58:04 -07:00 committed by GitHub
commit f5d79521ae
1 changed files with 2 additions and 2 deletions

View File

@ -67,7 +67,7 @@ impl Socket {
// this option, however, was added in 2.6.27, and we still support
// 2.6.18 as a kernel, so if the returned error is EINVAL we
// fallthrough to the fallback.
if cfg!(linux) {
if cfg!(target_os = "linux") {
match cvt(libc::socket(fam, ty | SOCK_CLOEXEC, 0)) {
Ok(fd) => return Ok(Socket(FileDesc::new(fd))),
Err(ref e) if e.raw_os_error() == Some(libc::EINVAL) => {}
@ -87,7 +87,7 @@ impl Socket {
let mut fds = [0, 0];
// Like above, see if we can set cloexec atomically
if cfg!(linux) {
if cfg!(target_os = "linux") {
match cvt(libc::socketpair(fam, ty | SOCK_CLOEXEC, 0, fds.as_mut_ptr())) {
Ok(_) => {
return Ok((Socket(FileDesc::new(fds[0])), Socket(FileDesc::new(fds[1]))));