summaryrefslogtreecommitdiff
path: root/runtime/ops/io.rs
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/ops/io.rs')
-rw-r--r--runtime/ops/io.rs33
1 files changed, 21 insertions, 12 deletions
diff --git a/runtime/ops/io.rs b/runtime/ops/io.rs
index 78263ce28..bef33e9fa 100644
--- a/runtime/ops/io.rs
+++ b/runtime/ops/io.rs
@@ -42,26 +42,35 @@ use {
// alive for the duration of the application since the last handle/fd
// being dropped will close the corresponding pipe.
#[cfg(unix)]
-static STDIN_HANDLE: Lazy<StdFile> =
- Lazy::new(|| unsafe { StdFile::from_raw_fd(0) });
+static STDIN_HANDLE: Lazy<StdFile> = Lazy::new(|| {
+ // SAFETY: corresponds to OS stdin
+ unsafe { StdFile::from_raw_fd(0) }
+});
#[cfg(unix)]
-static STDOUT_HANDLE: Lazy<StdFile> =
- Lazy::new(|| unsafe { StdFile::from_raw_fd(1) });
+static STDOUT_HANDLE: Lazy<StdFile> = Lazy::new(|| {
+ // SAFETY: corresponds to OS stdout
+ unsafe { StdFile::from_raw_fd(1) }
+});
#[cfg(unix)]
-static STDERR_HANDLE: Lazy<StdFile> =
- Lazy::new(|| unsafe { StdFile::from_raw_fd(2) });
+static STDERR_HANDLE: Lazy<StdFile> = Lazy::new(|| {
+ // SAFETY: corresponds to OS stderr
+ unsafe { StdFile::from_raw_fd(2) }
+});
#[cfg(windows)]
-static STDIN_HANDLE: Lazy<StdFile> = Lazy::new(|| unsafe {
- StdFile::from_raw_handle(GetStdHandle(winbase::STD_INPUT_HANDLE))
+static STDIN_HANDLE: Lazy<StdFile> = Lazy::new(|| {
+ // SAFETY: corresponds to OS stdin
+ unsafe { StdFile::from_raw_handle(GetStdHandle(winbase::STD_INPUT_HANDLE)) }
});
#[cfg(windows)]
-static STDOUT_HANDLE: Lazy<StdFile> = Lazy::new(|| unsafe {
- StdFile::from_raw_handle(GetStdHandle(winbase::STD_OUTPUT_HANDLE))
+static STDOUT_HANDLE: Lazy<StdFile> = Lazy::new(|| {
+ // SAFETY: corresponds to OS stdout
+ unsafe { StdFile::from_raw_handle(GetStdHandle(winbase::STD_OUTPUT_HANDLE)) }
});
#[cfg(windows)]
-static STDERR_HANDLE: Lazy<StdFile> = Lazy::new(|| unsafe {
- StdFile::from_raw_handle(GetStdHandle(winbase::STD_ERROR_HANDLE))
+static STDERR_HANDLE: Lazy<StdFile> = Lazy::new(|| {
+ // SAFETY: corresponds to OS stderr
+ unsafe { StdFile::from_raw_handle(GetStdHandle(winbase::STD_ERROR_HANDLE)) }
});
pub fn init() -> Extension {