commit 7c3abae4e68b6a21f05cb04f3af31217259c0aa9 from: Hiltjo Posthuma date: Mon Sep 29 16:48:27 2025 UTC drw.c: drw_scm_free: call free inside Because drw_scm_create() allocates it. commit - 93f26863d14666e56e992de3670a77178e66ddf2 commit + 7c3abae4e68b6a21f05cb04f3af31217259c0aa9 blob - 98dbaa8304cc6303925ecf384a09cb9076c96349 blob + 9fdd1a46af7c25aea000980dd0caf54f92d69ab0 --- drw.c +++ drw.c @@ -215,6 +215,7 @@ drw_scm_free(Drw *drw, Clr *scm, size_t clrcount) for (i = 0; i < clrcount; i++) drw_clr_free(drw, &scm[i]); + free(scm); } void blob - 21cf8fdc05f530ef7572e419545afcef34e46462 blob + 4f345ee6ae8d5e58a11f37a852c7d2656e15b80c --- dwm.c +++ dwm.c @@ -485,10 +485,8 @@ cleanup(void) cleanupmon(mons); for (i = 0; i < CurLast; i++) drw_cur_free(drw, cursor[i]); - for (i = 0; i < LENGTH(colors); i++) { + for (i = 0; i < LENGTH(colors); i++) drw_scm_free(drw, scheme[i], 3); - free(scheme[i]); - } free(scheme); XDestroyWindow(dpy, wmcheckwin); drw_free(drw);