Skip to content
This repository was archived by the owner on Aug 16, 2026. It is now read-only.

Commit db49a75

Browse files
⚡ Bolt: 🔒 Explicitly null-terminate ltsymbol after strncpy (#9)
* Explicitly null-terminate ltsymbol after strncpy Added explicit null-termination for `ltsymbol` in `arrangemon`, `createmon`, and `setlayout` to fix potential buffer over-reads. Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> * Replace strncpy with snprintf for ltsymbol Replaced `strncpy` with `snprintf` when assigning `ltsymbol` in `arrangemon`, `createmon`, and `setlayout` to guarantee null-termination and fix potential buffer over-reads. Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> --------- Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
1 parent 2183914 commit db49a75

1 file changed

Lines changed: 3 additions & 3 deletions

File tree

dwm.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -398,7 +398,7 @@ arrange(Monitor *m)
398398
void
399399
arrangemon(Monitor *m)
400400
{
401-
strncpy(m->ltsymbol, m->lt[m->sellt]->symbol, sizeof m->ltsymbol);
401+
snprintf(m->ltsymbol, sizeof m->ltsymbol, "%s", m->lt[m->sellt]->symbol);
402402
if (m->lt[m->sellt]->arrange)
403403
m->lt[m->sellt]->arrange(m);
404404
}
@@ -645,7 +645,7 @@ createmon(void)
645645
m->topbar = topbar;
646646
m->lt[0] = &layouts[0];
647647
m->lt[1] = &layouts[1 % LENGTH(layouts)];
648-
strncpy(m->ltsymbol, layouts[0].symbol, sizeof m->ltsymbol);
648+
snprintf(m->ltsymbol, sizeof m->ltsymbol, "%s", layouts[0].symbol);
649649
return m;
650650
}
651651

@@ -1538,7 +1538,7 @@ setlayout(const Arg *arg)
15381538
selmon->sellt ^= 1;
15391539
if (arg && arg->v)
15401540
selmon->lt[selmon->sellt] = (Layout *)arg->v;
1541-
strncpy(selmon->ltsymbol, selmon->lt[selmon->sellt]->symbol, sizeof selmon->ltsymbol);
1541+
snprintf(selmon->ltsymbol, sizeof selmon->ltsymbol, "%s", selmon->lt[selmon->sellt]->symbol);
15421542
if (selmon->sel)
15431543
arrange(selmon);
15441544
else

0 commit comments

Comments
 (0)