about summary refs log tree commit diff
path: root/src/libstd/sys/windows
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstd/sys/windows')
-rw-r--r--src/libstd/sys/windows/pipe.rs15
1 files changed, 6 insertions, 9 deletions
diff --git a/src/libstd/sys/windows/pipe.rs b/src/libstd/sys/windows/pipe.rs
index 9996909f2f5..ef511d13199 100644
--- a/src/libstd/sys/windows/pipe.rs
+++ b/src/libstd/sys/windows/pipe.rs
@@ -129,6 +129,9 @@ impl Drop for Event {
     }
 }
 
+unsafe impl Send for Event {}
+unsafe impl Sync for Event {}
+
 struct Inner {
     handle: libc::HANDLE,
     lock: Mutex<()>,
@@ -156,6 +159,9 @@ impl Drop for Inner {
     }
 }
 
+unsafe impl Send for Inner {}
+unsafe impl Sync for Inner {}
+
 unsafe fn pipe(name: *const u16, init: bool) -> libc::HANDLE {
     libc::CreateNamedPipeW(
         name,
@@ -220,9 +226,6 @@ pub struct UnixStream {
     write_deadline: u64,
 }
 
-unsafe impl Send for UnixStream {}
-unsafe impl Sync for UnixStream {}
-
 impl UnixStream {
     fn try_connect(p: *const u16) -> Option<libc::HANDLE> {
         // Note that most of this is lifted from the libuv implementation.
@@ -615,17 +618,11 @@ pub struct UnixAcceptor {
     deadline: u64,
 }
 
-unsafe impl Send for UnixAcceptor {}
-unsafe impl Sync for UnixAcceptor {}
-
 struct AcceptorState {
     abort: Event,
     closed: AtomicBool,
 }
 
-unsafe impl Send for AcceptorState {}
-unsafe impl Sync for AcceptorState {}
-
 impl UnixAcceptor {
     pub fn accept(&mut self) -> IoResult<UnixStream> {
         // This function has some funky implementation details when working with