退出时清理屏幕信息
This commit is contained in:
@@ -25,3 +25,27 @@ void monitor_initialize_tag(monitor_t *monitor, const char **tags) {
|
||||
|
||||
monitor->selected_tag = monitor->tag_list;
|
||||
}
|
||||
|
||||
static void tag_clean(tag_t *tag) {
|
||||
tag_t *next_tag = nullptr;
|
||||
for (tag_t *t = tag; t; t = next_tag) {
|
||||
p_delete(&t->name);
|
||||
|
||||
next_tag = t->next;
|
||||
p_delete(&t);
|
||||
}
|
||||
}
|
||||
|
||||
void monitor_clean(monitor_t *monitor) {
|
||||
monitor_t *next_monitor = nullptr;
|
||||
for (monitor_t *m = monitor; m; m = next_monitor) {
|
||||
p_delete(&m->name);
|
||||
tag_clean(m->tag_list);
|
||||
|
||||
m->selected_tag = nullptr;
|
||||
m->tag_list = nullptr;
|
||||
|
||||
next_monitor = m->next;
|
||||
p_delete(&m);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user