summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorvaxerski <vaxry@vaxry.net>2024-05-24 20:56:42 +0200
committervaxerski <vaxry@vaxry.net>2024-05-24 20:56:53 +0200
commit6d67b84469d5c12c5bbc4880f327ca8eb7a2ed2d (patch)
treef983ff0fffa1571a1cfad27db008c8e1929811bf /src
parent0d6eae052352dfa39a2442f252133988ecfb28ba (diff)
monitor: avoid UB on undefined auto dir
ref #6217
Diffstat (limited to 'src')
-rw-r--r--src/Compositor.cpp1
-rw-r--r--src/helpers/Monitor.hpp5
2 files changed, 4 insertions, 2 deletions
diff --git a/src/Compositor.cpp b/src/Compositor.cpp
index 5c9cfbad..529a3b3d 100644
--- a/src/Compositor.cpp
+++ b/src/Compositor.cpp
@@ -2666,6 +2666,7 @@ void CCompositor::arrangeMonitors() {
maxXOffsetLeft = newPosition.x;
break;
case eAutoDirs::DIR_AUTO_RIGHT:
+ case eAutoDirs::DIR_AUTO_NONE:
newPosition.x = maxXOffsetRight;
maxXOffsetRight += m->vecSize.x;
break;
diff --git a/src/helpers/Monitor.hpp b/src/helpers/Monitor.hpp
index 7aa07a86..e4456084 100644
--- a/src/helpers/Monitor.hpp
+++ b/src/helpers/Monitor.hpp
@@ -13,7 +13,8 @@
#include "signal/Signal.hpp"
// Enum for the different types of auto directions, e.g. auto-left, auto-up.
-enum class eAutoDirs {
+enum eAutoDirs {
+ DIR_AUTO_NONE = 0, /* None will be treated as right. */
DIR_AUTO_UP,
DIR_AUTO_DOWN,
DIR_AUTO_LEFT,
@@ -21,7 +22,7 @@ enum class eAutoDirs {
};
struct SMonitorRule {
- eAutoDirs autoDir;
+ eAutoDirs autoDir = DIR_AUTO_NONE;
std::string name = "";
Vector2D resolution = Vector2D(1280, 720);
Vector2D offset = Vector2D(0, 0);