From 9478ba71af7d0df5d7c73c09120a1911bf39606a Mon Sep 17 00:00:00 2001 From: Mark McCaskey Date: Thu, 28 Mar 2019 15:47:00 -0700 Subject: [PATCH] actually fix it --- src/bin/wasmer.rs | 74 +++++++++++++++++++++++------------------------ 1 file changed, 36 insertions(+), 38 deletions(-) diff --git a/src/bin/wasmer.rs b/src/bin/wasmer.rs index 9b918318921..5f80c2640f0 100644 --- a/src/bin/wasmer.rs +++ b/src/bin/wasmer.rs @@ -203,45 +203,43 @@ fn execute_wasm(options: &Run) -> Result<(), String> { }; // TODO: refactor this - let (_abi, import_object, _em_globals) = if cfg!(feature = "wasi") { - if wasmer_wasi::is_wasi_module(&module) { - ( - InstanceABI::WASI, - wasmer_wasi::generate_import_object( - options - .args - .iter() - .cloned() - .map(|arg| arg.into_bytes()) - .collect(), - env::vars() - .map(|(k, v)| format!("{}={}", k, v).into_bytes()) - .collect(), - ), - None, - ) - } else { - ( - InstanceABI::None, - wasmer_runtime_core::import::ImportObject::new(), - None, - ) - } + #[cfg(not(feature = "wasi"))] + let (_abi, import_object, _em_globals) = if wasmer_emscripten::is_emscripten_module(&module) { + let mut emscripten_globals = wasmer_emscripten::EmscriptenGlobals::new(&module); + ( + InstanceABI::Emscripten, + wasmer_emscripten::generate_emscripten_env(&mut emscripten_globals), + Some(emscripten_globals), // TODO Em Globals is here to extend, lifetime, find better solution + ) } else { - if wasmer_emscripten::is_emscripten_module(&module) { - let mut emscripten_globals = wasmer_emscripten::EmscriptenGlobals::new(&module); - ( - InstanceABI::Emscripten, - wasmer_emscripten::generate_emscripten_env(&mut emscripten_globals), - Some(emscripten_globals), // TODO Em Globals is here to extend, lifetime, find better solution - ) - } else { - ( - InstanceABI::None, - wasmer_runtime_core::import::ImportObject::new(), - None, - ) - } + ( + InstanceABI::None, + wasmer_runtime_core::import::ImportObject::new(), + None, + ) + }; + + #[cfg(feature = "wasi")] + let (_abi, import_object) = if wasmer_wasi::is_wasi_module(&module) { + ( + InstanceABI::WASI, + wasmer_wasi::generate_import_object( + options + .args + .iter() + .cloned() + .map(|arg| arg.into_bytes()) + .collect(), + env::vars() + .map(|(k, v)| format!("{}={}", k, v).into_bytes()) + .collect(), + ), + ) + } else { + ( + InstanceABI::None, + wasmer_runtime_core::import::ImportObject::new(), + ) }; let mut instance = module