diff options
| author | mavonarx <75391689+mavonarx@users.noreply.github.com> | 2025-07-23 23:11:07 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-07-23 23:11:07 +0200 |
| commit | ecc04e8ba7469fb01c5a066bf1c48d5cd58d1a18 (patch) | |
| tree | c6d86285afe39f3d8fbbf63d33ed62e065713e91 /src/Compositor.hpp | |
| parent | c51c6e38ac04295a4a6ad45b19bef1dbcdd6478f (diff) | |
drm: check syncobj timeline support before advertising protocol (#11117)
Prevents crashes on systems where DRM driver lacks syncobj timeline
support (e.g., Apple Silicon with Honeykrisp driver). Applications
like Zed and WezTerm would crash with 'Timeline failed importing'
when trying to use explicit sync.
Fixes #8158 #8803
---------
Co-authored-by: mvonarx <matthias.vonarx@sitrox.com>
Diffstat (limited to 'src/Compositor.hpp')
| -rw-r--r-- | src/Compositor.hpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/Compositor.hpp b/src/Compositor.hpp index b4a0c51c..23d1c365 100644 --- a/src/Compositor.hpp +++ b/src/Compositor.hpp @@ -152,6 +152,7 @@ class CCompositor { NColorManagement::SImageDescription getPreferredImageDescription(); bool shouldChangePreferredImageDescription(); + bool supportsDrmSyncobjTimeline() const; std::string m_explicitConfigPath; private: @@ -165,6 +166,8 @@ class CCompositor { void removeLockFile(); void setMallocThreshold(); + bool m_bDrmSyncobjTimelineSupported = false; + uint64_t m_hyprlandPID = 0; wl_event_source* m_critSigSource = nullptr; rlimit m_originalNofile = {}; |
