diff options
author | Joe Wilm <joe@jwilm.com> | 2017-01-23 08:45:40 -0800 |
---|---|---|
committer | Joe Wilm <jwilm@users.noreply.github.com> | 2017-01-23 09:14:01 -0800 |
commit | ee37dc86abb3257458d5832e4448ded8a0d2b0a7 (patch) | |
tree | ad354108ed76895790ff202a7037925bd32f0b7a | |
parent | abd3958cb54925935b7013555ac58ae65896f7ed (diff) | |
download | alacritty-ee37dc86abb3257458d5832e4448ded8a0d2b0a7.tar.gz alacritty-ee37dc86abb3257458d5832e4448ded8a0d2b0a7.zip |
Return an error from logging::initialize
Logging initialization now shares the same error handling code as the
rest of the `run` function.
-rw-r--r-- | src/logging.rs | 4 | ||||
-rw-r--r-- | src/main.rs | 6 |
2 files changed, 5 insertions, 5 deletions
diff --git a/src/logging.rs b/src/logging.rs index 1e6b1e42..f5340d05 100644 --- a/src/logging.rs +++ b/src/logging.rs @@ -53,9 +53,9 @@ impl<T: Send + io::Write> log::Log for Logger<T> { } } -pub fn initialize(options: &cli::Options) { +pub fn initialize(options: &cli::Options) -> Result<(), log::SetLoggerError> { log::set_logger(|max_log_level| { max_log_level.set(options.log_level); Box::new(Logger::new(io::stdout(), options.log_level)) - }).unwrap_or_else(|e| die!("{}", e)); + }) } diff --git a/src/main.rs b/src/main.rs index 265a9ee8..dd511cce 100644 --- a/src/main.rs +++ b/src/main.rs @@ -60,9 +60,6 @@ fn main() { // Load command line options let options = cli::Options::load(); - // Initialize the logger before entering alacritty main loop - logging::initialize(&options); - // Run alacritty if let Err(err) = run(config, options) { die!("Alacritty encountered an unrecoverable error:\n\n\t{}\n", Red(err)); @@ -77,6 +74,9 @@ fn main() { /// Creates a window, the terminal state, pty, I/O event loop, input processor, /// config change monitor, and runs the main display loop. fn run(mut config: Config, options: cli::Options) -> Result<(), Box<Error>> { + // Initialize the logger first as to capture output from other subsystems + logging::initialize(&options)?; + info!("Welcome to Alacritty."); // Create a display. |