From ad085666c100ee7cb35f769508a65b9457082019 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Fri, 25 Aug 2023 12:17:44 +0200 Subject: [PATCH] input: sanitize newlines in device names fixes #3066 by replacing newlines with dashes in device names --- src/managers/input/InputManager.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/managers/input/InputManager.cpp b/src/managers/input/InputManager.cpp index bda2e5ee..7bc84b82 100644 --- a/src/managers/input/InputManager.cpp +++ b/src/managers/input/InputManager.cpp @@ -1463,6 +1463,7 @@ void CInputManager::unsetCursorImage() { std::string CInputManager::deviceNameToInternalString(std::string in) { std::replace(in.begin(), in.end(), ' ', '-'); + std::replace(in.begin(), in.end(), '\n', '-'); std::transform(in.begin(), in.end(), in.begin(), ::tolower); return in; } @@ -1538,7 +1539,7 @@ void CInputManager::setCursorIconOnBorder(CWindow* w) { wlr_box box = {w->m_vRealPosition.vec().x, w->m_vRealPosition.vec().y, w->m_vRealSize.vec().x, w->m_vRealSize.vec().y}; eBorderIconDirection direction = BORDERICON_NONE; wlr_box boxFullGrabInput = {box.x - *PEXTENDBORDERGRAB - BORDERSIZE, box.y - *PEXTENDBORDERGRAB - BORDERSIZE, box.width + 2 * (*PEXTENDBORDERGRAB + BORDERSIZE), - box.height + 2 * (*PEXTENDBORDERGRAB + BORDERSIZE)}; + box.height + 2 * (*PEXTENDBORDERGRAB + BORDERSIZE)}; if (!wlr_box_contains_point(&boxFullGrabInput, mouseCoords.x, mouseCoords.y) || (!m_lCurrentlyHeldButtons.empty() && !currentlyDraggedWindow)) { direction = BORDERICON_NONE;