summaryrefslogtreecommitdiff
path: root/src/managers/XWaylandManager.cpp
diff options
context:
space:
mode:
authorSkidam <67871298+Skidamek@users.noreply.github.com>2026-02-26 17:42:49 +0100
committerGitHub <noreply@github.com>2026-02-26 16:42:49 +0000
commitcc14dd1baf69c01aede38572a0843e03bfdea5e0 (patch)
tree76aedd3cee3e25323ba8a1f20e7187e795ffdac1 /src/managers/XWaylandManager.cpp
parentc71fbd854dfdedaae011f4b8b1fdb81f8054b309 (diff)
xwayland: validate size hints before floating (#13361)
Diffstat (limited to 'src/managers/XWaylandManager.cpp')
-rw-r--r--src/managers/XWaylandManager.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/managers/XWaylandManager.cpp b/src/managers/XWaylandManager.cpp
index 2b4c2fee..1fca293a 100644
--- a/src/managers/XWaylandManager.cpp
+++ b/src/managers/XWaylandManager.cpp
@@ -129,7 +129,8 @@ bool CHyprXWaylandManager::shouldBeFloated(PHLWINDOW pWindow, bool pending) {
const auto SIZEHINTS = pWindow->m_xwaylandSurface->m_sizeHints.get();
if (pWindow->m_xwaylandSurface->m_transient || pWindow->m_xwaylandSurface->m_parent ||
- (SIZEHINTS && (SIZEHINTS->min_width == SIZEHINTS->max_width) && (SIZEHINTS->min_height == SIZEHINTS->max_height)))
+ (SIZEHINTS && SIZEHINTS->min_width > 0 && SIZEHINTS->min_height > 0 && SIZEHINTS->max_width > 0 && SIZEHINTS->max_height > 0 &&
+ (SIZEHINTS->min_width == SIZEHINTS->max_width) && (SIZEHINTS->min_height == SIZEHINTS->max_height)))
return true;
} else {
if (!pWindow->m_xdgSurface || !pWindow->m_xdgSurface->m_toplevel)