diff options
| -rw-r--r-- | dwm.c | 14 |
1 files changed, 5 insertions, 9 deletions
@@ -395,8 +395,7 @@ arrange(Monitor *m) void arrangemon(Monitor *m) { - strncpy(m->ltsymbol, m->lt[m->sellt]->symbol, sizeof(m->ltsymbol) - 1); - m->ltsymbol[sizeof(m->ltsymbol) - 1] = '\0'; + snprintf(m->ltsymbol, sizeof(m->ltsymbol), "%s", m->lt[m->sellt]->symbol); if (m->lt[m->sellt]->arrange) m->lt[m->sellt]->arrange(m); } @@ -646,8 +645,7 @@ 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) - 1); - m->ltsymbol[sizeof(m->ltsymbol) - 1] = '\0'; + snprintf(m->ltsymbol, sizeof(m->ltsymbol), "%s", layouts[0].symbol); return m; } @@ -923,13 +921,12 @@ gettextprop(Window w, Atom atom, char *text, unsigned int size) if (!XGetTextProperty(dpy, w, &name, atom) || !name.nitems) return 0; if (name.encoding == XA_STRING) { - strncpy(text, (char *)name.value, size - 1); + snprintf(text, size, "%s", (char *)name.value); } else if (XmbTextPropertyToTextList(dpy, &name, &list, &n) >= Success) { if (n > 0 && *list) - strncpy(text, *list, size - 1); + snprintf(text, size, "%s", *list); XFreeStringList(list); } - text[size - 1] = '\0'; XFree(name.value); return 1; } @@ -1520,8 +1517,7 @@ setlayout(const Arg *arg) selmon->sellt ^= 1; if (arg && arg->v) selmon->lt[selmon->sellt] = (Layout *)arg->v; - strncpy(selmon->ltsymbol, selmon->lt[selmon->sellt]->symbol, sizeof(selmon->ltsymbol) - 1); - selmon->ltsymbol[sizeof(selmon->ltsymbol) - 1] = '\0'; + snprintf(selmon->ltsymbol, sizeof(selmon->ltsymbol), "%s", selmon->lt[selmon->sellt]->symbol); if (selmon->sel) arrange(selmon); else |
