summaryrefslogtreecommitdiff
path: root/cli/lib.rs
diff options
context:
space:
mode:
authorKitson Kelly <me@kitsonkelly.com>2019-09-26 00:46:58 +1000
committerRyan Dahl <ry@tinyclouds.org>2019-09-25 10:46:58 -0400
commit3d2d0ee771abe308aee9a0ab6c89fd09bac80330 (patch)
tree5cc74b1e38b824d083306c5264a484d64ee6d248 /cli/lib.rs
parent112ce0df1f9e36a57b520aa59dc1767ba0716bb0 (diff)
Handle uncaught worker errors without panicking (#3019)
Diffstat (limited to 'cli/lib.rs')
-rw-r--r--cli/lib.rs15
1 files changed, 3 insertions, 12 deletions
diff --git a/cli/lib.rs b/cli/lib.rs
index 3f101b775..1e598e262 100644
--- a/cli/lib.rs
+++ b/cli/lib.rs
@@ -51,6 +51,8 @@ mod tokio_write;
pub mod version;
pub mod worker;
+use crate::deno_error::js_check;
+use crate::deno_error::print_err_and_exit;
use crate::progress::Progress;
use crate::state::ThreadSafeState;
use crate::worker::Worker;
@@ -90,17 +92,6 @@ impl log::Log for Logger {
fn flush(&self) {}
}
-fn print_err_and_exit(err: ErrBox) {
- eprintln!("{}", err.to_string());
- std::process::exit(1);
-}
-
-fn js_check(r: Result<(), ErrBox>) {
- if let Err(err) = r {
- print_err_and_exit(err);
- }
-}
-
fn create_worker_and_state(
flags: DenoFlags,
argv: Vec<String>,
@@ -118,7 +109,7 @@ fn create_worker_and_state(
});
// TODO(kevinkassimo): maybe make include_deno_namespace also configurable?
let state = ThreadSafeState::new(flags, argv, progress, true)
- .map_err(print_err_and_exit)
+ .map_err(deno_error::print_err_and_exit)
.unwrap();
let worker = Worker::new(
"main".to_string(),