修正不打日志时log系列函数崩溃的问题
This commit is contained in:
@@ -94,9 +94,9 @@ impl Default for Config {
|
|||||||
is_archipelago: true,
|
is_archipelago: true,
|
||||||
is_spiral_abyss: true,
|
is_spiral_abyss: true,
|
||||||
is_demonic_energy: true,
|
is_demonic_energy: true,
|
||||||
is_forest: true,
|
is_forest: false,
|
||||||
is_decompose: true,
|
is_decompose: true,
|
||||||
is_attack_power: true,
|
is_attack_power: false,
|
||||||
is_equip_transform: true,
|
is_equip_transform: true,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
39
src/lib.rs
39
src/lib.rs
@@ -75,53 +75,42 @@ fn to_utf8(string: &CxxString) -> String {
|
|||||||
cxx_string_to_string(string).to_string()
|
cxx_string_to_string(string).to_string()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn push_log(t: MessageType, msg: String) {
|
||||||
|
if let Some(lock) = LOGGER_SENDER.get() {
|
||||||
|
let _ = lock.send(Starpoles {
|
||||||
|
r#type: t.into(),
|
||||||
|
message: msg.clone(),
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
fn log_error(msg: &cxx::CxxString) {
|
fn log_error(msg: &cxx::CxxString) {
|
||||||
let msg = cxx_string_to_string(msg);
|
let msg = cxx_string_to_string(msg);
|
||||||
let lock = LOGGER_SENDER.get().unwrap();
|
push_log(MessageType::Error, msg.clone());
|
||||||
let _ = lock.send(Starpoles {
|
|
||||||
r#type: MessageType::Error.into(),
|
|
||||||
message: msg.clone(),
|
|
||||||
});
|
|
||||||
error!("{}", msg);
|
error!("{}", msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
fn log_warning(msg: &cxx::CxxString) {
|
fn log_warning(msg: &cxx::CxxString) {
|
||||||
let msg = cxx_string_to_string(msg);
|
let msg = cxx_string_to_string(msg);
|
||||||
let lock = LOGGER_SENDER.get().unwrap();
|
push_log(MessageType::Warning, msg.clone());
|
||||||
let _ = lock.send(Starpoles {
|
|
||||||
r#type: MessageType::Warning.into(),
|
|
||||||
message: msg.clone(),
|
|
||||||
});
|
|
||||||
warn!("{}", msg);
|
warn!("{}", msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
fn log_info(msg: &cxx::CxxString) {
|
fn log_info(msg: &cxx::CxxString) {
|
||||||
let msg = cxx_string_to_string(msg);
|
let msg = cxx_string_to_string(msg);
|
||||||
let lock = LOGGER_SENDER.get().unwrap();
|
push_log(MessageType::Info, msg.clone());
|
||||||
let _ = lock.send(Starpoles {
|
|
||||||
r#type: MessageType::Info.into(),
|
|
||||||
message: msg.clone(),
|
|
||||||
});
|
|
||||||
info!("{}", msg);
|
info!("{}", msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
fn log_debug(msg: &cxx::CxxString) {
|
fn log_debug(msg: &cxx::CxxString) {
|
||||||
let msg = cxx_string_to_string(msg);
|
let msg = cxx_string_to_string(msg);
|
||||||
let lock = LOGGER_SENDER.get().unwrap();
|
push_log(MessageType::Debug, msg.clone());
|
||||||
let _ = lock.send(Starpoles {
|
|
||||||
r#type: MessageType::Debug.into(),
|
|
||||||
message: msg.clone(),
|
|
||||||
});
|
|
||||||
debug!("{}", msg);
|
debug!("{}", msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
fn log_trace(msg: &cxx::CxxString) {
|
fn log_trace(msg: &cxx::CxxString) {
|
||||||
let msg = cxx_string_to_string(msg);
|
let msg = cxx_string_to_string(msg);
|
||||||
let lock = LOGGER_SENDER.get().unwrap();
|
push_log(MessageType::Trace, msg.clone());
|
||||||
let _ = lock.send(Starpoles {
|
|
||||||
r#type: MessageType::Trace.into(),
|
|
||||||
message: msg.clone(),
|
|
||||||
});
|
|
||||||
trace!("{}", msg);
|
trace!("{}", msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user