fix: ignore XQuartz $DISPLAY variable

This commit is contained in:
sxyazi 2025-04-08 13:28:34 +08:00
parent 0082d1181a
commit c3ecbef5e3
No known key found for this signature in database
2 changed files with 4 additions and 3 deletions

View file

@ -109,8 +109,9 @@ impl Adapter {
if env_exists("WAYLAND_DISPLAY") {
return if supported_compositor { Self::Wayland } else { Self::Chafa };
}
if env_exists("DISPLAY") {
return Self::X11;
match env::var("DISPLAY").unwrap_or_default().as_str() {
s if !s.is_empty() && !s.contains("/org.xquartz") => return Self::X11,
_ => {}
}
warn!("[Adapter] Falling back to chafa");

View file

@ -1,7 +1,7 @@
use std::{ops::DerefMut, process::ExitStatus, time::Duration};
use futures::future::try_join3;
use mlua::{AnyUserData, ExternalError, IntoLua, IntoLuaMulti, Table, UserData, UserDataFields, UserDataMethods, Value};
use mlua::{AnyUserData, ExternalError, IntoLua, IntoLuaMulti, Table, UserData, UserDataMethods, Value};
use tokio::{io::{self, AsyncBufReadExt, AsyncReadExt, AsyncWriteExt, BufReader, BufWriter}, process::{ChildStderr, ChildStdin, ChildStdout}, select};
use yazi_binding::Error;