Auto merge of #20468 - Eijebong:fix_log, r=mbrubeck

Fix style/build_gecko.rs for log 0.4

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/20468)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2018-03-28 17:18:31 -04:00 committed by GitHub
commit c8b0dc965d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -448,11 +448,11 @@ mod bindings {
} }
impl log::Log for BuildLogger { impl log::Log for BuildLogger {
fn enabled(&self, meta: &log::LogMetadata) -> bool { fn enabled(&self, meta: &log::Metadata) -> bool {
self.file.is_some() && meta.target().contains(&self.filter) self.file.is_some() && meta.target().contains(&self.filter)
} }
fn log(&self, record: &log::LogRecord) { fn log(&self, record: &log::Record) {
if !self.enabled(record.metadata()) { if !self.enabled(record.metadata()) {
return; return;
} }
@ -463,21 +463,27 @@ mod bindings {
record.level(), record.level(),
record.target(), record.target(),
record.args(), record.args(),
record.location().file(), record.file().unwrap_or("<unknown>"),
record.location().line()); record.line().unwrap_or(0));
}
fn flush(&self) {
if let Some(ref file) = self.file {
file.lock().unwrap().flush().unwrap();
}
} }
} }
if let Some(path) = env::var_os("STYLO_BUILD_LOG") { if let Some(path) = env::var_os("STYLO_BUILD_LOG") {
log::set_logger(|log_level| { log::set_max_level(log::LevelFilter::Debug);
log_level.set(log::LogLevelFilter::Debug); log::set_boxed_logger(
Box::new(BuildLogger { Box::new(BuildLogger {
file: fs::File::create(path).ok().map(Mutex::new), file: fs::File::create(path).ok().map(Mutex::new),
filter: env::var("STYLO_BUILD_FILTER").ok() filter: env::var("STYLO_BUILD_FILTER").ok()
.unwrap_or_else(|| "bindgen".to_owned()), .unwrap_or_else(|| "bindgen".to_owned()),
}) })
}) ).expect("Failed to set logger.");
.expect("Failed to set logger.");
true true
} else { } else {
false false