From ce41d3479103fe818466cde9394cce9ac314f519 Mon Sep 17 00:00:00 2001 From: Hiltjo Posthuma Date: Tue, 13 Oct 2026 14:34:59 +0200 Subject: properly NUL terminate ltsymbol Although this is config error in config.h if the symbol is too long. Make sure it is correct. Note that the symbol would then get truncated. --- dwm.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/dwm.c b/dwm.c index 1249997..515e4e4 100644 --- a/dwm.c +++ b/dwm.c @@ -395,7 +395,8 @@ arrange(Monitor *m) void arrangemon(Monitor *m) { - strncpy(m->ltsymbol, m->lt[m->sellt]->symbol, sizeof m->ltsymbol); + strncpy(m->ltsymbol, m->lt[m->sellt]->symbol, sizeof(m->ltsymbol) - 1); + m->ltsymbol[sizeof(m->ltsymbol) - 1] = '\0'; if (m->lt[m->sellt]->arrange) m->lt[m->sellt]->arrange(m); } @@ -645,7 +646,8 @@ createmon(void) m->topbar = topbar; m->lt[0] = &layouts[0]; m->lt[1] = &layouts[1 % LENGTH(layouts)]; - strncpy(m->ltsymbol, layouts[0].symbol, sizeof m->ltsymbol); + strncpy(m->ltsymbol, layouts[0].symbol, sizeof(m->ltsymbol) - 1); + m->ltsymbol[sizeof(m->ltsymbol) - 1] = '\0'; return m; } -- cgit v1.3.1