From 2e1156f267cbb938778e8a7bc5e1305739a92832 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=89=E5=92=B2=E9=9B=85=20=C2=B7=20Misaki=20Masa?= Date: Tue, 8 Apr 2025 13:29:46 +0800 Subject: [PATCH] fix: ignore XQuartz `$DISPLAY` variable (#2586) --- yazi-adapter/src/adapter.rs | 5 +++-- yazi-plugin/src/process/child.rs | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/yazi-adapter/src/adapter.rs b/yazi-adapter/src/adapter.rs index 3bce7cff..b8fdb5a2 100644 --- a/yazi-adapter/src/adapter.rs +++ b/yazi-adapter/src/adapter.rs @@ -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"); diff --git a/yazi-plugin/src/process/child.rs b/yazi-plugin/src/process/child.rs index d89865c4..f9f9bd3a 100644 --- a/yazi-plugin/src/process/child.rs +++ b/yazi-plugin/src/process/child.rs @@ -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;