Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 13 additions & 3 deletions src/jfn_cef/src/ffi.rs
Original file line number Diff line number Diff line change
Expand Up @@ -230,9 +230,19 @@ pub fn jfn_cef_shutdown() {
// ---- helpers ---------------------------------------------------------------

fn log_severity_from_int(v: c_int) -> LogSeverity {
// cef_log_severity_t is a u32 C enum. Cast through the sys type so we
// don't depend on private repr details.
let raw: sys::cef_log_severity_t = unsafe { std::mem::transmute(v as u32) };
// Integers passed through `jfn_cef_set_log_severity` and CEF console
// callbacks are `cef_log_severity_t` ABI values, not Chromium's older
// signed log levels (-1..2). Keep this table in sync with
// `client/events.rs` and the constants in `jfn_rust::app`:
// 0 DEFAULT, 1 VERBOSE, 2 INFO, 3 WARNING, 4 ERROR, 5 FATAL
let raw = match v {
1 => sys::cef_log_severity_t::LOGSEVERITY_VERBOSE,
2 => sys::cef_log_severity_t::LOGSEVERITY_INFO,
3 => sys::cef_log_severity_t::LOGSEVERITY_WARNING,
4 => sys::cef_log_severity_t::LOGSEVERITY_ERROR,
5 => sys::cef_log_severity_t::LOGSEVERITY_FATAL,
_ => sys::cef_log_severity_t::LOGSEVERITY_DEFAULT,
};
LogSeverity::from(raw)
}

Expand Down
10 changes: 6 additions & 4 deletions src/jfn_rust/src/app.rs
Original file line number Diff line number Diff line change
Expand Up @@ -727,10 +727,12 @@ fn vo_ready(need_max: &mut bool) -> bool {
// =====================================================================

const LOG_CEF: u8 = 2;
const LOG_SEVERITY_VERBOSE: c_int = -1;
const LOG_SEVERITY_INFO: c_int = 0;
const LOG_SEVERITY_WARNING: c_int = 1;
const LOG_SEVERITY_ERROR: c_int = 2;
// cef_log_severity_t ABI: 1 VERBOSE, 2 INFO, 3 WARNING, 4 ERROR.
// Must match `jfn_cef::ffi::log_severity_from_int` / `client/events.rs`.
const LOG_SEVERITY_VERBOSE: c_int = 1;
const LOG_SEVERITY_INFO: c_int = 2;
const LOG_SEVERITY_WARNING: c_int = 3;
const LOG_SEVERITY_ERROR: c_int = 4;

fn cef_severity_for_cef_filter() -> c_int {
// Map LOG_CEF level to CEF severity:
Expand Down
Loading