Free ran_assignments
When we run 'reload' all the assignments are freed:e3e09119bf/src/config.c (L99-L109)
Assignments are saved to each window after they are executed:e3e09119bf/src/assignments.c (L41-L46)
This means that the pointers stored in window->ran_assignments are invalid (shouldn't be dangerous currently but could lead to a segfault if the code is modified) after a 'reload'.
This commit is contained in:
parent
e3e09119bf
commit
98df2e21fa
12
src/config.c
12
src/config.c
|
@ -160,10 +160,16 @@ void load_configuration(xcb_connection_t *conn, const char *override_configpath,
|
||||||
FREE(barconfig);
|
FREE(barconfig);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Invalidate pixmap caches in case font or colors changed */
|
|
||||||
Con *con;
|
Con *con;
|
||||||
TAILQ_FOREACH(con, &all_cons, all_cons)
|
TAILQ_FOREACH(con, &all_cons, all_cons) {
|
||||||
FREE(con->deco_render_params);
|
/* Assignments changed, previously ran assignments are invalid. */
|
||||||
|
if (con->window) {
|
||||||
|
con->window->nr_assignments = 0;
|
||||||
|
FREE(con->window->ran_assignments);
|
||||||
|
}
|
||||||
|
/* Invalidate pixmap caches in case font or colors changed. */
|
||||||
|
FREE(con->deco_render_params);
|
||||||
|
}
|
||||||
|
|
||||||
/* Get rid of the current font */
|
/* Get rid of the current font */
|
||||||
free_font();
|
free_font();
|
||||||
|
|
Loading…
Reference in New Issue