-#undef I3__FILE__
-#define I3__FILE__ "tree.c"
/*
* vim:ts=4:sw=4:expandtab
*
add_ignore_event(cookie.sequence, 0);
}
ipc_send_window_event("close", con);
- FREE(con->window->class_class);
- FREE(con->window->class_instance);
- i3string_free(con->window->name);
- FREE(con->window->ran_assignments);
- FREE(con->window);
+ window_free(con->window);
+ con->window = NULL;
}
Con *ws = con_get_workspace(con);
free(con->name);
FREE(con->deco_render_params);
TAILQ_REMOVE(&all_cons, con, all_cons);
+ while (!TAILQ_EMPTY(&(con->swallow_head))) {
+ Match *match = TAILQ_FIRST(&(con->swallow_head));
+ TAILQ_REMOVE(&(con->swallow_head), match, matches);
+ match_free(match);
+ free(match);
+ }
+ while (!TAILQ_EMPTY(&(con->marks_head))) {
+ mark_t *mark = TAILQ_FIRST(&(con->marks_head));
+ TAILQ_REMOVE(&(con->marks_head), mark, marks);
+ FREE(mark->name);
+ FREE(mark);
+ }
free(con);
/* in the case of floating windows, we already focused another container
TAILQ_FOREACH(current, &(con->nodes_head), nodes)
mark_unmapped(current);
if (con->type == CT_WORKSPACE) {
- /* We need to call mark_unmapped on floating nodes aswell since we can
+ /* We need to call mark_unmapped on floating nodes as well since we can
* make containers floating. */
TAILQ_FOREACH(current, &(con->floating_head), floating_windows)
mark_unmapped(current);