From 4dee102a67466ca0c95f540aa458f8779f3a1cb5 Mon Sep 17 00:00:00 2001 From: newpavlov Date: Tue, 20 Aug 2019 19:16:01 +0300 Subject: [PATCH] use new get_args --- src/libstd/sys/wasi/args.rs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/libstd/sys/wasi/args.rs b/src/libstd/sys/wasi/args.rs index 14aa391912ed2..2d0ddea385afd 100644 --- a/src/libstd/sys/wasi/args.rs +++ b/src/libstd/sys/wasi/args.rs @@ -12,14 +12,16 @@ pub unsafe fn cleanup() { } pub struct Args { - iter: vec::IntoIter>, + iter: vec::IntoIter, _dont_send_or_sync_me: PhantomData<*mut ()>, } /// Returns the command line arguments pub fn args() -> Args { + let mut buf = Vec::new(); + let _ = wasi::get_args(|arg| buf.push(OsString::from_vec(arg.to_vec()))); Args { - iter: wasi::get_args().unwrap_or(Vec::new()).into_iter(), + iter: buf.into_iter(), _dont_send_or_sync_me: PhantomData } } @@ -33,7 +35,7 @@ impl Args { impl Iterator for Args { type Item = OsString; fn next(&mut self) -> Option { - self.iter.next().map(OsString::from_vec) + self.iter.next() } fn size_hint(&self) -> (usize, Option) { self.iter.size_hint()